diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..08fdd16 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +database.db +__pycache__ diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..6f29a00 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,31 @@ +[build-system] +requires = ["hatchling"] +build-backend = "hatchling.build" + + +[project] +name = "Pilgrim" +version = "0.0.1" +authors = [ + { name="Gustavo Henrique Santos Souza de Miranda", email="gustavohssmiranda@gmail.com" } +] +description = "Pilgrim's Travel Log" +readme = "README.md" +requires-python = ">=3.10" +classifiers = [ + "Programming Language :: Python :: 3", + "License :: OSI Approved :: MIT License", + "Operating System :: OS Independent", +] +dependencies = [ + "sqlalchemy" +] +[template.plugins.default] +src-layout = true +[project.urls] +Homepage = "https://git.gustavomiranda.xyz/GHMiranda/Pilgrim" +Issues = "https://git.gustavomiranda.xyz/GHMiranda/Pilgrim" +[tool.hatch.build.targets.wheel] +packages = ["src/Pilgrim"] +[project.scripts] +pilgrim = "Pilgrim:main" diff --git a/src/Application/__init__.py b/src/Application/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/src/Database/Database.py b/src/Database/Database.py deleted file mode 100644 index a9b08c4..0000000 --- a/src/Database/Database.py +++ /dev/null @@ -1,19 +0,0 @@ -from sqlalchemy import create_engine -from sqlalchemy.ext.declarative import declarative_base -from sqlalchemy.orm import sessionmaker - -class Database: - def __init__(self): - self.engine = create_engine('sqlite:///database.db', echo=False,connect_args={"check_same_thread": False}) - self.Session = sessionmaker(bind=self.engine,autoflush=False,autocommit=False) - self.Base = declarative_base() - def create(self): - self.Base.metadata.create_all(self.engine) - def get_db(self): - db = self.Session() - try: - yield db - finally: - db.close() - - diff --git a/src/Database/__init__.py b/src/Database/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/src/Models/TravelDiary/__init__.py b/src/Models/TravelDiary/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/src/Models/__init__.py b/src/Models/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/src/Application/Application.py b/src/Pilgrim/Application.py similarity index 53% rename from src/Application/Application.py rename to src/Pilgrim/Application.py index cbdad0b..429798b 100644 --- a/src/Application/Application.py +++ b/src/Pilgrim/Application.py @@ -1,11 +1,9 @@ -from src.Database.Database import Database +from Pilgrim.Database import Database class Application: - database = Database() - def __init__(self): - pass + self.database = Database() def run(self): self.database.create() diff --git a/src/Pilgrim/Database.py b/src/Pilgrim/Database.py new file mode 100644 index 0000000..d28fdee --- /dev/null +++ b/src/Pilgrim/Database.py @@ -0,0 +1,21 @@ +from sqlalchemy import create_engine +from sqlalchemy.ext.declarative import declarative_base +from sqlalchemy.orm import sessionmaker + +Base = declarative_base() + + +class Database: + def __init__(self): + self.engine = create_engine( + "sqlite:///database.db", + echo=False, + connect_args={"check_same_thread": False}, + ) + self.Session = sessionmaker(bind=self.engine, autoflush=False, autocommit=False) + + def create(self): + Base.metadata.create_all(self.engine) + + def get_db(self): + return self.Session() diff --git a/src/Models/TravelDiary/TravelDiary.py b/src/Pilgrim/TravelDiary.py similarity index 60% rename from src/Models/TravelDiary/TravelDiary.py rename to src/Pilgrim/TravelDiary.py index 3917bf1..ea03940 100644 --- a/src/Models/TravelDiary/TravelDiary.py +++ b/src/Pilgrim/TravelDiary.py @@ -1,8 +1,9 @@ from sqlalchemy import Column, String, Integer -from src.Application.Application import Application +from Pilgrim import Application, Base -class TravelDiary(Application.database.Base): + +class TravelDiary(Base): __tablename__ = "TravelDiary" id = Column(Integer, primary_key=True) name = Column(String) diff --git a/src/Pilgrim/__init__.py b/src/Pilgrim/__init__.py new file mode 100644 index 0000000..201964a --- /dev/null +++ b/src/Pilgrim/__init__.py @@ -0,0 +1,6 @@ +from Pilgrim.Application import Application +from Pilgrim.command import main +from Pilgrim.Database import Database, Base +from Pilgrim.TravelDiary import TravelDiary + +__all__ = ["Application", "Database", "TravelDiary", "main", "Base"] diff --git a/src/Pilgrim/command.py b/src/Pilgrim/command.py new file mode 100644 index 0000000..d132d04 --- /dev/null +++ b/src/Pilgrim/command.py @@ -0,0 +1,6 @@ +from Pilgrim import Application + + +def main(): + app = Application() + app.run() diff --git a/src/main.py b/src/main.py deleted file mode 100644 index 43d5d75..0000000 --- a/src/main.py +++ /dev/null @@ -1,6 +0,0 @@ -from src.Application.Application import Application - - -if __name__ == '__main__': - App = Application() - App.run()