Liberty Framework
Project description
📖 Liberty Framework
A Scalable and Extensible FastAPI and React Framework for Business Applications
Announcements
- Last Release:
- Build React Frontend and Setup before adding to Python package
- Get version from last tag to set the package version
- Add a delay before building the docker image
- Build docker image after publishing to PyPi
- Sync with github release
- Issue with focus on input lookup when opening search dialog
- Implement call for custom rest api, add drop and create database for framework
🚀 Liberty Framework is a powerful, modular, and extensible FastAPI-based and React-based framework designed to streamline backend development for business applications. It provides database management, authentication, real-time socket communication, and more, making it easy to deploy and scale enterprise solutions.
- Online demo is available at https://liberty.nomana-it.fr
- Web page at: https://nomana-it.fr
Login = demo
Password = demo
Appplication = LIBERTY, NOMASX-1 and NOMAJDE
✨ Features
✅ FastAPI-based – High-performance backend with asynchronous capabilities.
✅ React-based – Beautiful and responsive frontend without any dependencies to components.
✅ Database Management – SQLAlchemy, Alembic for migrations, and PostgreSQL support.
✅ Real-Time Communication – Integrated WebSocket (Socket.IO) for live updates.
✅ Authentication & Security – JWT authentication, encryption, and role-based access.
✅ Automated Database Migrations – Alembic versioning for multiple databases.
✅ Easy Installation & Deployment – Available as a Python package and Docker image.
✅ Extensible – Plugin-based architecture to support future enhancements.
✨ Enterprise additional features
- 🌐 Traefik: A powerful reverse proxy for routing and load balancing.
- ⚙️ AirFlow: Automate and manage workflows effortlessly.
- 🐘 pgAdmin: Manage your PostgreSQL database visually with ease.
- 🔐 KeyCloak: OIDC Service for authentication
- 📂 Gitea: Git Repository to manage dags, plugins, backup
📦 Installation
Requirements
A PostgreSQL 16 database is required. You can either:
- Create a Docker image based on postgres:16, or
- Install PostgreSQL 16 directly on your host system.
For easier setup and to ensure compatibility with future enterprise features, it is recommended to create a database with a user named liberty.
Option 1: Install via pip
pip install liberty-framework
🚀 Quick Start
After installation, you can start the framework with:
liberty-start
⚙️ URL
Installation URL
- Setup:
http://<your_host>:<your_port>/setup - Application:
http://<your_host>:<your_port> - API Documentation:
http://<your_host>:<your_port>/api - Swagger:
http://<your_host>:<your_port>/api/test
Demo URL
- Setup: https://liberty.nomana-it.fr/setup
- Application: https://liberty.nomana-it.fr
- API Documentation: https://liberty.nomana-it.fr/api
- Swagger: https://liberty.nomana-it.fr/api/test
📖 Documentation
- Reference: https://docs.nomana-it.fr/liberty
🤝 Contributing
We welcome contributions! Here’s how you can help:
- Fork this repository.
- Clone your fork:
git clone https://github.com/fblettner/liberty-framework.git
- Create a new branch for your feature:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add new feature"
- Push to your fork and submit a Pull Request:
git push origin feature-name
- Join discussions and help improve the framework!
💖 Sponsorship
If you find Liberty Framework useful and would like to support its development, consider sponsoring us. Your contributions help maintain the project, add new features, and improve the documentation. Every contribution, big or small, is greatly appreciated!
To sponsor, visit: GitHub Sponsors or reach out to us directly.
📜 License
Liberty Framework is open-source software licensed under the AGPL License.
Enterprise features require a license:
- NOMASX-1: Security management, Segregation of duties and licenses compliancy
- NOMAJDE JD-Edwards integration
- Airflow Plugins: Automatic database backup, database synchronisation...
- Liberty AI: Currently, OpenAI is set into the configuration, you have to use your own account without enterprise features license
📧 Contact & Support
If you have questions or need support:
- Email: franck.blettner@nomana-it.fr
- GitHub Issues: Report an issue
- Discussions: Join the conversation in the GitHub Discussions section.
⭐ If you find Liberty Framework useful, consider giving it a star on GitHub!
git clone https://github.com/fblettner/liberty-framework.git
cd liberty-framework
🚀 Let's build the future of business applications together! 🚀
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file liberty_framework-6.0.60.tar.gz.
File metadata
- Download URL: liberty_framework-6.0.60.tar.gz
- Upload date:
- Size: 14.0 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
890ccdfc4168c4f3dc28dc9c04dd802b259aeb1dc259dd877bb9e275feac72c5
|
|
| MD5 |
03100fc0f1f0903edd513a873d2a3340
|
|
| BLAKE2b-256 |
2413d6ecde4d74a43cac50caebafc7bf55d6dd75fde4fff4b9c389eb4866e647
|
File details
Details for the file liberty_framework-6.0.60-py3-none-any.whl.
File metadata
- Download URL: liberty_framework-6.0.60-py3-none-any.whl
- Upload date:
- Size: 14.1 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a33b160667509fd8f04f821b604180e99bfa8788d4075fee07d6c5cfd4f97714
|
|
| MD5 |
1427c5329d83a33465e72b8e137fede3
|
|
| BLAKE2b-256 |
d1dec157cdfd60324fb6dceab399fddad81ebe88f17a3f253abd5f798966aad6
|