|
1 | | -# __PLC_OSS__ Standard Repo Template |
| 1 | +# Welcome to cuTile Python |
| 2 | +Welcome to the official repository of **cutile-python**! This open-source project is designed to provide a collection of utility functions and tools that simplify common tasks in Python development |
2 | 3 |
|
3 | | -This is repo is the standard NVIDIA OSS repo with the following items to make all NVIDIA repos use a consistent base: |
| 4 | +## Goal of cuTile Python |
4 | 5 |
|
5 | | -- GitHub File Templates |
6 | | - - Issue templates |
7 | | - - PR template |
8 | | -- GitHub Repo Templates |
9 | | - - Issue/PR labels |
10 | | - - Project tracking and release board templates |
11 | | -- Files |
12 | | - - Root |
13 | | - - `CITATION.md` with RAPIDS info pre-filled |
14 | | - - `CHANGELOG.md` skeleton |
15 | | - - `CODE_OF_CONDUCT.md` file with our standard code of conduct |
16 | | - - `CONTRIBUTING.md` skeleton |
17 | | - - `LICENSE` file with Apache 2.0 License |
18 | | - - Use the [Confluence page](https://confluence.nvidia.com/pages/viewpage.action?pageId=788418816) for other licenses |
19 | | - - `print_env.sh` for debugging support |
20 | | - - `README.md` skeleton |
21 | | - - `SECURITY.md` file with our standard security instructions |
22 | | - - `CLA.md` file (delete if not using MIT or BSD licenses) |
23 | | - - Root/.github |
24 | | - - /ISSUE_TEMPLATE |
25 | | - - Templates for each issue type (`Bug`, `Doc`, `Feature`, `Question`) |
26 | | - - `config.yml` |
27 | | - - /workflow-templates |
28 | | - - `add_issue_to_project.yml` |
29 | | - - `add_issue_to_project_raw.yml` |
30 | | - - `CODEOWNERS` |
31 | | - - `PULL_REQUEST_TEMPLATE.md` |
32 | | - - Root/maintainers |
33 | | - - See the readme in this folder for specifics |
| 6 | +The goal of **cuTile Python** is to offer a lightweight and easy-to-use utility library that enhances productivity and code readability. It aims to provide reusable components for data manipulation, file handling, string operations, and more—making Python development more efficient and enjoyable. |
34 | 7 |
|
35 | 8 |
|
36 | | -## Usage for new NVIDIA OSS repos |
| 9 | +## Overview |
| 10 | +**cuTile Python** includes a variety of modules and functions that cover: |
37 | 11 |
|
38 | | -1. Clone this repo |
39 | | -1. Find/replace all in the clone of `___PROJECT___` and `__PROJECT_NAME__` and replace with the name of the new library |
40 | | -1. Inspect all files to make sure all replacements work and update text as needed |
41 | | -1. Customize issue/PR templates to fit the repo |
42 | | - - There are two issue template formats provided, simple `.md` templates and more interactive `.yml` form templates |
43 | | - - Delete the overlapping templates you are not using (ie if you decide to use the `.yml`s delete the `.md` templates |
44 | | - - In `config.yml` determine if you will allow issues to be created outside of the templates |
45 | | - - In `config.yml` determine if you will use question issue types, or use GitHub discussions |
46 | | -1. Update `CHANGELOG.md` with next release version |
47 | | -1. Add developer documentation to the end of the `CONTRIBUTING.md` that is project specific and useful for developers contributing to the project |
48 | | - - The goal here is to keep the `README.md` light, so the development/debugging information should go in `CONTRIBUTING.md` |
49 | | -1. Complete `README.md` with project description, quick start, install, and contribution information |
50 | | -1. Copy the [template project](https://github.com/orgs/rapidsai/projects/80/views/1) into your org and name as appropriate |
51 | | - - Follow the instructions in the project's [readme](https://github.com/orgs/rapidsai/projects/80/views/1?pane=info) to add your issues |
52 | | - - Update your project's readme as fits best for your team |
53 | | - - Use the URL of the newly created project in the `.github/workflow-templates/add_to_project.yml` GHA automations |
54 | | -. Check `LICENSE` file is correct (update year) |
55 | | -. Change git origin to point to new repo and push |
56 | | -. Remove the line break below and everything above it |
| 12 | +- File I/O operations |
| 13 | +- String manipulation |
| 14 | +- Data formatting and conversion |
| 15 | +- Logging and debugging utilities |
| 16 | +- Date and time utilities |
| 17 | +- Miscellaneous helper functions |
57 | 18 |
|
58 | | -## Usage for existing NVIDIA OSS repos |
| 19 | +Each utility is designed to be intuitive and easy to integrate into your existing Python projects. |
59 | 20 |
|
60 | | -1. Follow the steps 1-8 above, but add the files to your existing repo and merge |
| 21 | +## Example |
61 | 22 |
|
62 | | -<!-- REMOVE THE LINE BELOW AND EVERYTHING ABOVE --> |
63 | | ------------------------------------------ |
64 | | -# [Project Title] |
| 23 | +Here's a quick example of how to use one of the string manipulation utilities from cuTile Python: |
65 | 24 |
|
66 | | -# Overview |
67 | | -Provide an overview of the project. |
68 | | -What the project does? |
69 | | -Why the project is useful? |
70 | | - |
71 | | -# Get Started |
72 | | -Describe the get-started or installation guidelines or provide a link to the installation instruction |
73 | | - |
74 | | -# Contribution Guidelines |
75 | | -Provide the link to the CONTRIBUTING file(s). |
76 | | - |
77 | | -# Community |
78 | | -Provide the channel for community communications. |
79 | | - |
80 | | -# References |
81 | | -Provide a list of related references |
82 | | - |
83 | | -# License |
84 | | -This project is licensed under the [NAME HERE] License - see the LICENSE.md file for details |
| 25 | +```python |
| 26 | +from cutile.string_utils import to_snake_case |
85 | 27 |
|
| 28 | +text = "ConvertThisToSnakeCase" |
| 29 | +snake_text = to_snake_case(text) |
| 30 | +print(snake_text) # Output: convert_this_to_snake_case |
0 commit comments