Personal portfolio and data engineering showcase site.
This repository hosts the code for datamays.com, built with Django, Tailwind, and other supporting tools. The project uses uv for Python dependency management and a VS Code Dev Container for a consistent development environment.
Feel free to fork and use as a foundation for your own personal portfolio!
- Docker (for dev container)
- VS Code
- VS Code Remote - Containers extension
Optionally, you can run without the dev container, but using the container ensures consistent versions of Python, Node, and dependencies.
- Clone the repository:
git clone https://github.com/dimays/datamays.git
cd datamays- Open the repo in VS Code and reopen in the dev container:
Command Palette → "Dev Containers: Reopen in Container"
- Post-create setup:
The dev container automatically runs .devcontainer/post-create.sh, which will:
- Install Node.js dependencies (
npm install) - Sync Python dependencies using uv (
uv sync→ generates.venv)
You should see .venv/ created and uv.lock generated if it doesn’t exist yet.
uv run python manage.py runserver 0.0.0.0:8000Visit http://localhost:8000 in your browser.
npm run devVisit http://localhost:3000 for Tailwind hot-reload.
Python Packages
- Add a package:
uv add <package-name>- Remove a package:
uv remove <package-name>- Sync dependencies and update
.venv:
uv syncAll Python dependencies are defined in
pyproject.tomland locked inuv.lock.
Node Packages
npm install <package-name>
npm remove <package-name>- Fork the repository and create a branch for your feature/fix:
git checkout -b feature/my-new-feature- Make changes in the dev container to ensure environment consistency.
- Test your changes locally.
- Commit changes and push to your fork:
git add .
git commit -m "Add feature XYZ"
git push origin feature/my-new-feature- Open a Pull Request against
main.
All commits should follow standard formatting and pass any pre-commit checks if configured.
- The dev container ensures that Python, Node, and other tooling are consistent across developers and CI/CD.
.venvshould not be committed. Onlypyproject.tomlanduv.lockshould be tracked.- Docker + VS Code Dev Containers are strongly recommended for first-time setup.