Doorlook is a project designed to analyze companies and how they treat their employees. It consists of a backend built with FastAPI and a frontend built with React. The project utilizes web scraping and various AI tools to gather and analyze opinions about companies.
- Analyze companies based on various metrics.
- Evaluate employee treatment and satisfaction.
- Web scraping to gather opinions from various sources.
- AI tools for opinion analysis and sentiment detection.
- RESTful API for backend services.
The project scaffold could be found in STRUCTURE.
- Python 3.12
- Node.js and npm
- Docker (optional, for containerization)
-
Clone the repository:
git clone https://github.com/Gogeloo/doorlook.git cd doorlook
-
Backend setup:
Navigate to the backend directory and install dependencies using Poetry:
cd backend poetry install
-
Frontend setup:
Navigate to the frontend directory and install dependencies using npm:
cd frontend npm install
-
Running the backend:
cd backend poetry run uvicorn app.main:app --reload
The backend will be available at
http://localhost:8000
. -
Running the frontend:
cd frontend npm start
The frontend will be available at
http://localhost:3000
. -
Using Docker:
Alternatively, you can use Docker to run both backend and frontend:
docker-compose up --build
This will start both services and make them available at their respective ports.
This project uses pre-commit hooks to ensure code quality. To install and update the hooks, run:
pre-commit install
Navigate to http://localhost:3000 to access the frontend interface. Use the available endpoints to interact with the backend API (e.g., http://localhost:8000/docs for the FastAPI documentation).
Contributions are welcome! Please follow these steps to contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature/your-feature
).- Please follow the conventional commit messages format.
- Make your changes.
- Commit your changes (
git commit -am 'feat: add new feature'
).- Please follow the conventional commit messages format.
- Push to the branch (
git push origin feature/your-feature
). - Create a new Pull Request.
Please read the CONTRIBUTING for more details.
This project is licensed under the MIT License - see the LICENSE file for details.