proyecto-capstone-backend
This repository contains the backend code for the Proyecto Integrador.
https://github.com/gfranciscoerazom/proyecto-capstone-backend
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.0%) to scientific vocabulary
Repository
This repository contains the backend code for the Proyecto Integrador.
Basic Info
- Host: GitHub
- Owner: gfranciscoerazom
- License: mit
- Language: Python
- Default Branch: main
- Size: 287 KB
Statistics
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 7
- Releases: 0
Metadata Files
docs/README.md
Proyecto Integrador
For a AI generated documentation, please visit
Description
This project is a FastAPI-based application that provides user authentication and management functionalities.
Requirements
- Python 3.11
Installation
Clone the repository:
sh git clone https://github.com/gfranciscoerazom/proyecto-capstone-backend.git cd proyecto-capstone-backendCreate and activate a virtual environment:
sh python3.11 -m venv .venv source .venv/bin/activate # On Windows use `.venv\Scripts\activate`Install the dependencies:
sh pip install -r requirements.txtAdd the
.envfile:Create a
.envfile in the root directory with the following content:```properties
Type of environment: production, development, testing
ENVIRONMENT=production
to get a secret key run:
openssl rand -hex 32
SECRETKEY="yoursecretkey" ALGORITHM="HS256" ACCESSTOKENEXPIREMINUTES=30
URL to connect to the database
DATABASE_URL="sqlite:///data/database.db"
Email configuration
Email that will send the emails
EMAIL_SENDER="user@example.com"
App password of the email
EMAILAPPPASSWORD="xxxx xxxx xxxx xxxx"
Write token of logfire
LOGSTOKEN="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
Face recognition configuration
"VGG-Face", "Facenet", "Facenet512", "OpenFace", "DeepFace", "DeepID", "ArcFace", "Dlib", "SFace", "GhostFaceNet", "Buffalo_L",
FACERECOGNITIONAI_MODEL=Facenet
FACERECOGNITIONAI_THRESHOLD=0.5
```
Running the Application
Start the FastAPI server:
sh fastapi dev # In production use fastapi runAccess the application: Open your browser and navigate to
http://127.0.0.1:8000/docs.
Running the Application with Docker
Create this file structure:
sh 📁 . ├── 📁 data │ ├── 📁 events_imgs │ └── 📁 people_imgs └── 🐳 docker-compose.ymlCreate the .env file in the root (see the point 4 of the installation section).
Add this YAML code to the
docker-compose.ymlfile:```yaml version: "3.8"
services: backend: image: gfranciscoerazom/capstone-backend containername: capstone-backend-container ports: - "8000:8000" volumes: - ./data/eventsimgs:/code/data/eventsimgs - ./data/peopleimgs:/code/data/peopleimgs envfile: - .env
frontend: image: gfranciscoerazom/capstone-frontend container_name: capstone-frontend-container ports: - "8080:8080"```
Run the following command to start the application:
sh docker-compose up -dAccess the application: Open your browser and navigate to
http://127.0.0.1:8080/home.
Running Tests
Run the tests using pytest:
sh pytest -n logical
License
This project is licensed under the MIT License. See the LICENSE file for details.
Documentation
The project documentation is available in the wiki tab of the repository.
Owner
- Login: gfranciscoerazom
- Kind: user
- Repositories: 1
- Profile: https://github.com/gfranciscoerazom
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: Proyecto CAPSTONE
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Gabriel Francisco
family-names: Erazo Merino
email: gabriel.erazo.merino@udla.edu.ec
affiliation: Universidad de las Américas (UDLA)
orcid: 'https://orcid.org/0000-0002-7271-4526'
- given-names: Domenica Cristina
family-names: Escobar Moyano
email: domenica.escobar.moyano@udla.edu.ec
affiliation: Universidad de las Américas (UDLA)
orcid: 'https://orcid.org/0000-0002-0019-6504'
- given-names: Edwin Leonardo
family-names: García Aucatoma
email: edwin.garcia.aucatoma@udla.edu.ec
affiliation: Universidad de las Américas (UDLA)
orcid: 'https://orcid.org/0000-0003-4572-489X'
- name: Universidad de las Américas
address: >-
Redondel del Ciclista, Antigua Vía a Nayón, Quito EC
170124
city: Quito
country: EC
post-code: '170503'
alias: UDLA
email: admision@udla.edu.ec
tel: +593 2 3981000
website: 'https://www.udla.edu.ec'
repository-code: >-
https://github.com/gfranciscoerazom/proyecto-capstone-backend
abstract: >-
This is the backend for the “Proyecto CAPSTONE” project.
It provides the API for the project's frontend.
keywords:
- FastAPI
- Python
- SQLModel
- UDLA
- CAPSTONE
- deepface
- AI
license: MIT
GitHub Events
Total
- Create event: 3
- Issues event: 16
- Watch event: 8
- Delete event: 2
- Issue comment event: 37
- Push event: 109
- Pull request review comment event: 23
- Pull request review event: 22
- Pull request event: 23
- Gollum event: 1
- Fork event: 2
Last Year
- Create event: 3
- Issues event: 16
- Watch event: 8
- Delete event: 2
- Issue comment event: 37
- Push event: 109
- Pull request review comment event: 23
- Pull request review event: 22
- Pull request event: 23
- Gollum event: 1
- Fork event: 2
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 1
- Total pull requests: 13
- Average time to close issues: N/A
- Average time to close pull requests: 2 days
- Total issue authors: 1
- Total pull request authors: 2
- Average comments per issue: 0.0
- Average comments per pull request: 1.15
- Merged pull requests: 12
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 1
- Pull requests: 13
- Average time to close issues: N/A
- Average time to close pull requests: 2 days
- Issue authors: 1
- Pull request authors: 2
- Average comments per issue: 0.0
- Average comments per pull request: 1.15
- Merged pull requests: 12
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- gfranciscoerazom (12)
Pull Request Authors
- SkyDragon00 (9)
- gfranciscoerazom (4)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- Faker ==33.1.0
- Flask ==3.1.0
- Flask-Cors ==5.0.0
- Jinja2 ==3.1.4
- Markdown ==3.7
- MarkupSafe ==3.0.2
- PyJWT ==2.10.1
- PySocks ==1.7.1
- PyYAML ==6.0.2
- Pygments ==2.18.0
- SQLAlchemy ==2.0.36
- Werkzeug ==3.1.3
- absl-py ==2.1.0
- annotated-types ==0.7.0
- anyio ==4.7.0
- asttokens ==3.0.0
- astunparse ==1.6.3
- bcrypt ==4.2.1
- beautifulsoup4 ==4.12.3
- blinker ==1.9.0
- certifi ==2024.8.30
- charset-normalizer ==3.4.0
- click ==8.1.7
- comm ==0.2.2
- debugpy ==1.8.11
- decorator ==5.1.1
- deepface ==0.0.93
- dnspython ==2.7.0
- email_validator ==2.2.0
- executing ==2.1.0
- fastapi ==0.115.6
- fastapi-cli ==0.0.6
- filelock ==3.16.1
- fire ==0.7.0
- flatbuffers ==24.3.25
- gast ==0.6.0
- gdown ==5.2.0
- google-pasta ==0.2.0
- greenlet ==3.1.1
- grpcio ==1.68.1
- gunicorn ==23.0.0
- h11 ==0.14.0
- h5py ==3.12.1
- httpcore ==1.0.7
- httptools ==0.6.4
- httpx ==0.28.1
- idna ==3.10
- iniconfig ==2.0.0
- ipykernel ==6.29.5
- ipython ==8.30.0
- isort ==5.13.2
- itsdangerous ==2.2.0
- jedi ==0.19.2
- joblib ==1.4.2
- jupyter_client ==8.6.3
- jupyter_core ==5.7.2
- keras ==3.7.0
- libclang ==18.1.1
- lz4 ==4.3.3
- markdown-it-py ==3.0.0
- matplotlib-inline ==0.1.7
- mdurl ==0.1.2
- ml-dtypes ==0.4.1
- mtcnn ==1.0.0
- namex ==0.0.8
- nest-asyncio ==1.6.0
- numpy ==2.0.2
- opencv-python ==4.10.0.84
- opt_einsum ==3.4.0
- optree ==0.13.1
- orjson ==3.10.12
- packaging ==24.2
- pandas ==2.2.3
- parso ==0.8.4
- pexpect ==4.9.0
- pillow ==11.0.0
- platformdirs ==4.3.6
- pluggy ==1.5.0
- prompt_toolkit ==3.0.48
- protobuf ==5.29.1
- psutil ==6.1.0
- ptyprocess ==0.7.0
- pure_eval ==0.2.3
- pydantic ==2.10.3
- pydantic-extra-types ==2.10.1
- pydantic-settings ==2.7.0
- pydantic_core ==2.27.1
- pytest ==8.3.4
- python-dateutil ==2.9.0.post0
- python-dotenv ==1.0.1
- python-multipart ==0.0.19
- pytz ==2024.2
- pyzmq ==26.2.0
- requests ==2.32.3
- retina-face ==0.0.17
- rich ==13.9.4
- rich-toolkit ==0.12.0
- setuptools ==75.6.0
- shellingham ==1.5.4
- six ==1.17.0
- sniffio ==1.3.1
- soupsieve ==2.6
- sqlmodel ==0.0.22
- stack-data ==0.6.3
- starlette ==0.41.3
- tensorboard ==2.18.0
- tensorboard-data-server ==0.7.2
- tensorflow ==2.18.0
- termcolor ==2.5.0
- tornado ==6.4.2
- tqdm ==4.67.1
- traitlets ==5.14.3
- typer ==0.15.1
- typing_extensions ==4.12.2
- tzdata ==2024.2
- ujson ==5.10.0
- urllib3 ==2.2.3
- uvicorn ==0.33.0
- uvloop ==0.21.0
- watchfiles ==1.0.3
- wcwidth ==0.2.13
- websockets ==14.1
- wheel ==0.45.1
- wrapt ==1.17.0
- Faker ==33.1.0
- Flask ==3.1.0
- Flask-Cors ==5.0.0
- Jinja2 ==3.1.4
- Markdown ==3.7
- MarkupSafe ==3.0.2
- PyJWT ==2.10.1
- PySocks ==1.7.1
- PyYAML ==6.0.2
- Pygments ==2.18.0
- SQLAlchemy ==2.0.36
- Werkzeug ==3.1.3
- absl-py ==2.1.0
- annotated-types ==0.7.0
- anyio ==4.7.0
- asttokens ==3.0.0
- astunparse ==1.6.3
- bcrypt ==4.2.1
- beautifulsoup4 ==4.12.3
- blinker ==1.9.0
- certifi ==2024.8.30
- charset-normalizer ==3.4.0
- click ==8.1.7
- colorama ==0.4.6
- comm ==0.2.2
- debugpy ==1.8.11
- decorator ==5.1.1
- deepface ==0.0.93
- dnspython ==2.7.0
- email_validator ==2.2.0
- executing ==2.1.0
- fastapi ==0.115.6
- fastapi-cli ==0.0.6
- filelock ==3.16.1
- fire ==0.7.0
- flatbuffers ==24.3.25
- gast ==0.6.0
- gdown ==5.2.0
- google-pasta ==0.2.0
- greenlet ==3.1.1
- grpcio ==1.68.1
- gunicorn ==23.0.0
- h11 ==0.14.0
- h5py ==3.12.1
- httpcore ==1.0.7
- httptools ==0.6.4
- httpx ==0.28.1
- idna ==3.10
- iniconfig ==2.0.0
- ipykernel ==6.29.5
- ipython ==8.30.0
- isort ==5.13.2
- itsdangerous ==2.2.0
- jedi ==0.19.2
- joblib ==1.4.2
- jupyter_client ==8.6.3
- jupyter_core ==5.7.2
- keras ==3.7.0
- libclang ==18.1.1
- lz4 ==4.3.3
- markdown-it-py ==3.0.0
- matplotlib-inline ==0.1.7
- mdurl ==0.1.2
- ml-dtypes ==0.4.1
- mtcnn ==1.0.0
- namex ==0.0.8
- nest-asyncio ==1.6.0
- numpy ==2.0.2
- opencv-python ==4.10.0.84
- opt_einsum ==3.4.0
- optree ==0.13.1
- orjson ==3.10.12
- packaging ==24.2
- pandas ==2.2.3
- parso ==0.8.4
- pillow ==11.0.0
- platformdirs ==4.3.6
- pluggy ==1.5.0
- prompt_toolkit ==3.0.48
- protobuf ==5.29.1
- psutil ==6.1.0
- pure_eval ==0.2.3
- pydantic ==2.10.3
- pydantic-extra-types ==2.10.1
- pydantic-settings ==2.7.0
- pydantic_core ==2.27.1
- pytest ==8.3.4
- python-dateutil ==2.9.0.post0
- python-dotenv ==1.0.1
- python-multipart ==0.0.19
- pytz ==2024.2
- pywin32 ==308
- pyzmq ==26.2.0
- requests ==2.32.3
- retina-face ==0.0.17
- rich ==13.9.4
- rich-toolkit ==0.12.0
- shellingham ==1.5.4
- six ==1.17.0
- sniffio ==1.3.1
- soupsieve ==2.6
- sqlmodel ==0.0.22
- stack-data ==0.6.3
- starlette ==0.41.3
- tensorboard ==2.18.0
- tensorboard-data-server ==0.7.2
- tensorflow ==2.18.0
- tensorflow-io-gcs-filesystem ==0.31.0
- tensorflow_intel ==2.18.0
- termcolor ==2.5.0
- tornado ==6.4.2
- tqdm ==4.67.1
- traitlets ==5.14.3
- typer ==0.15.1
- typing_extensions ==4.12.2
- tzdata ==2024.2
- ujson ==5.10.0
- urllib3 ==2.2.3
- uvicorn ==0.33.0
- watchfiles ==1.0.3
- wcwidth ==0.2.13
- websockets ==14.1
- wrapt ==1.17.0