README en version simplifiée, et en français
This commit is contained in:
		
							
								
								
									
										165
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										165
									
								
								README.md
									
									
									
									
									
								
							@@ -1,165 +1,16 @@
 | 
			
		||||
# Agenda culturel
 | 
			
		||||
 | 
			
		||||
L'agenda culturel est un projet django créé à partir de [Django Docker Quickstard](https://github.com/godd0t/django-docker-quickstart/) pour faciliter son développemnt et déploiement. Voir ci-dessous le readme issu de ce projet.
 | 
			
		||||
L'agenda culturel est un projet django créé à partir de [Django Docker Quickstard](https://github.com/godd0t/django-docker-quickstart/) pour faciliter son développemnt et déploiement. Il est distribué sous licence AGPL.
 | 
			
		||||
 | 
			
		||||
Une instance de démonstration est disponible à l'adresse https://agenda-culturel.lecridelagirafe.org/.
 | 
			
		||||
 | 
			
		||||
## Installation
 | 
			
		||||
 | 
			
		||||
## Django Docker Quickstart
 | 
			
		||||
Pour installer une version de développement, reportez-vous à la documentation de [Django Docker Quickstard](https://github.com/godd0t/django-docker-quickstart/). En résumé:
 | 
			
		||||
 | 
			
		||||
This quickstart provides an easy way to initiate a Django project using Docker. It comes with pre-configured services including PostgreSQL, Redis, Celery (worker and beat), Nginx, and Traefik, ready to run a Django web application. Additionally, it provides a few handy shortcuts for easier development.
 | 
			
		||||
* ```git pull```
 | 
			
		||||
* ```make build-dev```
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
On peut aussi peupler les catégories avec un choix de catégories élémentaires:
 | 
			
		||||
 | 
			
		||||
### Features 🚀
 | 
			
		||||
 | 
			
		||||
- **Django** web application framework
 | 
			
		||||
- **PostgreSQL** database
 | 
			
		||||
- **Redis** in-memory data structure store
 | 
			
		||||
- **Celery** worker and beat services for running background tasks asynchronously
 | 
			
		||||
- **Nginx** web server for serving static and media files, and proxying requests to the Django application
 | 
			
		||||
- **Traefik** reverse proxy for routing requests to the appropriate service and providing SSL termination
 | 
			
		||||
 | 
			
		||||
### Included Packages and Tools 🛠️
 | 
			
		||||
 | 
			
		||||
- **Pytest**: Testing framework
 | 
			
		||||
- **Pytest Sugar**: A pytest plugin for a better look
 | 
			
		||||
- **Pytest Django**: A pytest plugin providing useful tools for testing Django applications
 | 
			
		||||
- **Coverage**: Test coverage tool
 | 
			
		||||
- **Ruff**: Linter
 | 
			
		||||
- **Black**: Code formatter
 | 
			
		||||
 | 
			
		||||
### Requirements 📋
 | 
			
		||||
 | 
			
		||||
- Docker & Docker Compose - [Install and Use Docker](https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-20-04)
 | 
			
		||||
- Python 3.10 or higher
 | 
			
		||||
- Make (optional for shortcuts)
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
### Getting Started 🏁
 | 
			
		||||
 | 
			
		||||
1. **Clone the repository:**
 | 
			
		||||
    ```bash
 | 
			
		||||
    git clone https://github.com/jmtrivial/agenda-culturel.git
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
2. **Change directory into the project:**
 | 
			
		||||
    ```bash
 | 
			
		||||
    cd agenda-culturel
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
3. **Copy the `env.example` file to `.env` and update the values as needed:**  
 | 
			
		||||
 | 
			
		||||
   - **For Linux/macOS:**  
 | 
			
		||||
     ```bash
 | 
			
		||||
     cp env.example .env
 | 
			
		||||
     ```
 | 
			
		||||
   - **For Windows (Command Prompt):**  
 | 
			
		||||
     ```cmd
 | 
			
		||||
      Copy-Item -Path env.example -Destination .env
 | 
			
		||||
     ```
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
### Initial Setup ⚙️
 | 
			
		||||
 | 
			
		||||
#### Development Prerequisites
 | 
			
		||||
 | 
			
		||||
1. **Create a virtual environment:**
 | 
			
		||||
    ```bash
 | 
			
		||||
    python -m venv venv
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
2. **Activate the virtual environment:**
 | 
			
		||||
    ```bash
 | 
			
		||||
    source venv/bin/activate
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
3. **(Optional) Install the development requirements specific to your IDE for enhanced functionality and support.**
 | 
			
		||||
    ```bash
 | 
			
		||||
    pip install -r src/requirements-dev.txt
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
4. **Build the image and run the container:**  
 | 
			
		||||
   
 | 
			
		||||
   - If buildkit is not enabled, enable it and build the image:
 | 
			
		||||
     ```bash
 | 
			
		||||
     DOCKER_BUILDKIT=1 COMPOSE_DOCKER_CLI_BUILD=1 docker-compose -f docker-compose.yml up --build -d
 | 
			
		||||
     ```
 | 
			
		||||
   
 | 
			
		||||
   - If buildkit is enabled, build the image:
 | 
			
		||||
     ```bash
 | 
			
		||||
     docker-compose -f docker-compose.yml up --build -d
 | 
			
		||||
     ```
 | 
			
		||||
   
 | 
			
		||||
   - Or, use the shortcut:
 | 
			
		||||
     ```bash
 | 
			
		||||
     make build-dev
 | 
			
		||||
     ```
 | 
			
		||||
 | 
			
		||||
You can now access the application at http://localhost:8008. The development environment allows for immediate reflection of code changes.
 | 
			
		||||
 | 
			
		||||
#### Production Setup
 | 
			
		||||
 | 
			
		||||
1. **Build the image and run the container:**  
 | 
			
		||||
 | 
			
		||||
   - If buildkit is not enabled, enable it and build the image:
 | 
			
		||||
     ```bash
 | 
			
		||||
       DOCKER_BUILDKIT=1 COMPOSE_DOCKER_CLI_BUILD=1 docker-compose -f docker-compose.prod.yml up --build -d
 | 
			
		||||
     ```
 | 
			
		||||
 | 
			
		||||
   - If buildkit is enabled, build the image:
 | 
			
		||||
     ```bash
 | 
			
		||||
      docker-compose -f docker-compose.prod.yml up --build -d
 | 
			
		||||
     ```
 | 
			
		||||
   - Or, use the shortcut:
 | 
			
		||||
     ```bash
 | 
			
		||||
       make build-prod
 | 
			
		||||
     ```
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
### Shortcuts 🔑
 | 
			
		||||
 | 
			
		||||
This project includes several shortcuts to streamline the development process:
 | 
			
		||||
 | 
			
		||||
- **Create migrations:**
 | 
			
		||||
    ```bash
 | 
			
		||||
    make make-migrations
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
- **Run migrations:**
 | 
			
		||||
    ```bash
 | 
			
		||||
    make migrate
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
- **Run the linter:**
 | 
			
		||||
    ```bash
 | 
			
		||||
    make lint
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
- **Run the formatter:**
 | 
			
		||||
    ```bash
 | 
			
		||||
    make format
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
- **Run the tests:**
 | 
			
		||||
    ```bash
 | 
			
		||||
    make test
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
- **Create a super user:**
 | 
			
		||||
    ```bash
 | 
			
		||||
    make super-user
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
- **Build and run dev environment:**
 | 
			
		||||
    ```bash
 | 
			
		||||
    make build-dev
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
- **Build and run prod environment:**
 | 
			
		||||
    ```bash
 | 
			
		||||
    make build-prod
 | 
			
		||||
    ```
 | 
			
		||||
---
 | 
			
		||||
* ```make create-categories```
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user