Skip to content

This is the backend of CUL, responsible for powering the CLI and WebUI by providing module metadata (versions and details), serving modules to the CLI, and handling module uploads.

Notifications You must be signed in to change notification settings

atrithakar/cul_backend_fastapi_mongodb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Project CUL Backend

This repository contains the backend code of Project CUL, a command-line utility designed to manage C/C++ libraries efficiently.

🛠️ This version of the backend has been migrated from Flask + SQLite to FastAPI + MongoDB for better performance, scalability, and modularity.

CUL is being actively developed to become a fully modular, self-hostable, and open ecosystem for C/C++ module management. The backend plays a crucial role in powering both the CLI and Web UI.


How to Access

You can access deployed backend here. It also includes a web frontend, so go check it out.

Test Credentials

Email:

test@cul.com

Password:

test

🚀 How to Use

Please refer to the Project CUL Repository for detailed instructions on:

  • Installing and setting up CUL
  • Using the CLI
  • Accessing module data

🧩 Architecture Highlights

  • FastAPI for modern, asynchronous Python backend
  • MongoDB as the primary database for better document handling and future-proofing
  • Modular and clean structure for easier deployment and maintenance
  • Built with extensibility in mind, so self-hosting is made easy

🤝 Contributing

Contributions to this backend are welcome!

✅ Steps to Contribute

  1. Fork this Repository
    Create your own copy to begin working on new features or fixing bugs.

  2. Set Up Locally
    Clone your fork and set up the development environment:

    git clone https://github.com/your-username/project_cul_backend.git  
    cd project_cul_backend  
    pip install -r requirements.txt  
    
  3. Follow the Coding Standards
    Make sure your changes follow Python best practices and are modular.

  4. Document Your Work
    Keep your code well-documented to ensure maintainability.

  5. Submit a Pull Request
    Create a PR with a clear description of what was added or fixed.

💡 Tip: Before submitting a PR, consider opening an issue first to discuss your idea or bug report with the maintainers.


🐞 Reporting Issues

Found a bug or have suggestions for improvement?
Please open an issue in the GitHub Issues section.

Your feedback helps improve the platform for everyone!


📌 Status

This backend is still in active development. Hosting and production deployment will be announced once all major bugs are resolved and testing is complete.

Stay tuned for updates!

About

This is the backend of CUL, responsible for powering the CLI and WebUI by providing module metadata (versions and details), serving modules to the CLI, and handling module uploads.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published