Skip to content

agokhanileri/DataCraft

Repository files navigation

Data Science

Description

Python License Lint

Data science learning path with data manipulation, visualization, access, and database.

Content

# Script Level Status Linting Topics
01 Numpy Soft Scalars, Arrays, Matrices, ...
02 Pandas Med ⚠️ Series, DataFrame,
03 Scipy Soft ⚠️
04 Matplotlib Soft
05 Seaborn Soft
06 FileHandling Firm Read/Write, CSV, JSON, Parquet, URL, excel, multimodal, ...
07 SQL Firm ⚠️ properties, joins, merges, pyconnector, postgresql, ...

Manual

Style

Philosopy: Pythonic | Zen
- Relevant lines are grouped together as much as possible.

Linter: ruff
Formatter: black

Execution: line-by-line
- Although some scripts may run directly.

Run the currency app (local)

A small FastAPI app that provides a single-page USD currency converter is included at currency/currency.py with its template in currency/templates/index.html. To run it locally:

  1. Create and activate a virtual environment (macOS / zsh):
python -m venv .venv
source .venv/bin/activate
  1. Install the required packages (minimal set):
pip install fastapi uvicorn httpx jinja2 python-multipart
# or install dev extras if you added them to pyproject: pip install -e .[dev]
  1. Start the app (one of the two ways):
  • Via uvicorn directly:
uvicorn currency.currency:app --reload --port 8000
  • Or using the convenience runner included in scripts:
python scripts/run_currency.py
  1. Open the UI at: http://127.0.0.1:8000
  • Click Load currencies to populate the select input, enter a USD amount and choose a target currency, then click Convert. The conversion is saved to a local SQLite database file (conversions.db) and a history is shown beneath the form.

Dependencies

Python: v3.12

Packages: numpy, pandas, scipy, matplotlib, seaborn, scikit-learn, pytorch, tensorflow, keras, sqlite3

CI/CD: ruff, black, mypy, pytest, pre-commit

License

This project is licensed under the BSD 3-Clause License.