Commit graph

19 commits

Author SHA1 Message Date
dce9c4d3b0
fix(preview): improve file content handling
Refined how file content is displayed in the preview, distinguishing and safely handling text, Markdown, and image files. Introduced proper escaping for non-Markdown text files to prevent potential security issues.
2024-06-19 10:48:28 +02:00
a179e2999f
feat: add clearfix to content container
Modified the content container in the HTML template to include an ID for easier styling. Added a clearfix using CSS after pseudo-element to ensure proper behavior and layout flow. This resolves layout issues caused by floating elements within the container.
2024-06-19 10:26:15 +02:00
c35242bf3c
chore: bump version to 0.0.4
All checks were successful
Python Package CI/CD / Publish to PyPI (push) Successful in 36s
Updated the project version to 0.0.4 to denote new changes or fixes.
2024-06-19 10:19:42 +02:00
03a47fffbd
chore: update .gitignore to include dist directory
Added trailing slash to "dist" in .gitignore to properly ignore the directory instead of any file named "dist". This ensures that all build artifacts are excluded from version control.
2024-06-19 10:19:21 +02:00
7512c54d94
chore(release): bump version to 0.0.3
All checks were successful
Python Package CI/CD / Publish to PyPI (push) Successful in 42s
Version updated to 0.0.3 to incorporate recent changes and improvements.
Helps in tracking the progress and ensures version consistency.

No breaking changes introduced.
2024-06-19 10:17:04 +02:00
95ebe1157f
chore: replace requests with dulwich in dependencies
Swapped out `requests` for `dulwich` in dependencies to better handle Git repository interactions. This change ensures more efficient and specialized Git operations within the project. No changes to functionality expected.
2024-06-19 10:16:11 +02:00
69a278de6e
fix: string handling for file path in markdown previews for legacy Python versions
Ensured string handling for file paths in markdown previews uses consistent single quotes to prevent syntax errors.
2024-06-19 10:15:22 +02:00
ccd4a1cb77
feat: add type annotations and docstrings for Flask routes
Provided type annotations and detailed docstrings for all routes
in the Flask application to improve code readability and
maintainability. Updated return types to use Flask's Response
object and included explanations of arguments and return values
for each route function, enhancing overall code documentation.

This change aims to facilitate better understanding and easier
maintenance of the codebase, particularly for new contributors.
2024-06-19 10:02:10 +02:00
f80d827957
feat(markdown): enhance URL rewriting with better docstrings
Added detailed docstrings to the `RelativeURLRewriter` class and its methods
to improve code readability and maintainability. The docstrings provide
clear descriptions of the purpose, arguments, and return values for the
class and its subfunctions, aiding future developers in understanding
the URL rewriting process more easily.
2024-06-19 09:54:44 +02:00
ee9a84d92e
feat: add type annotations and improve docstrings in Git classes
Enhanced the InMemoryRepo and Git classes with type annotations and detailed docstrings for improved code readability and maintainability. Type hints were added to function signatures for clarity, and docstrings were expanded to include argument and return type descriptions. Addressed the ability to fetch file content and directory structure using specific commit hashes, defaulting to HEAD when not provided.
2024-06-19 09:50:32 +02:00
d5fc940e60
feat: add CI/CD workflow for PyPI package releases
All checks were successful
Python Package CI/CD / Publish to PyPI (push) Successful in 36s
Introduced a GitHub Actions workflow for automated CI/CD of the Python package. This setup includes:
- Triggering on push events to any tag
- Containerized build environment using Node 20 on Bookworm
- Steps for code checkout, dependency installation, and publishing to PyPI

This enhancement streamlines the release process and ensures consistent packaging and distribution of the Python package.
2024-06-19 09:37:22 +02:00
d15b0a53dc
chore: bump version to 0.0.2
Updated the version from 0.0.1 to 0.0.2 to reflect recent changes
and improvements in the project. This version increment is a
preparatory step for the upcoming release.
2024-06-19 09:33:43 +02:00
74e6a1310b
fix(preview.html): correct back to parent directory link
Updated the "Back to Parent Directory" link to handle file paths
starting with a slash. This adjustment ensures the URL is properly
constructed, preventing broken links and enhancing navigation
usability in the preview view.
2024-06-19 09:33:31 +02:00
755719daec
chore: update .gitignore and LICENSE information
Added 'dist/' to .gitignore to avoid checking in distribution files. Updated copyright information in LICENSE to reflect the Private.coffee Team ownership.

No functional code changes, just repository maintenance.
2024-06-19 09:25:34 +02:00
894b6f8c52
feat: add file preview and improve project structure
- Added file preview functionality, enabling users to view images, text, and markdown files directly within the app.
- Updated project metadata: changed author to "Private.coffee Team" and updated URLs.
- Introduced a main function to allow customizable host and port via environment variables.
- Enhanced raw file serving with MIME type checks and content disposition for better file handling.
- Fixed URL formats in templates for consistent navigation.

These improvements enhance usability and maintainability, providing a richer user experience and preparing for future enhancements.
2024-06-19 09:23:45 +02:00
621022dfb8
feat: add homepage and improve markdown processing
- Added an index route and template for the homepage
- Moved to a custom markdown processor to handle relative URLs
- Enhanced CSS for better layout structure and styling
- Improved the directory listing logic to support path filtering
- Updated endpoint to serve raw files from main branch
- Added comprehensive documentation strings to Git class methods

These changes improve user navigation and content display across the application.
2024-06-19 08:31:07 +02:00
6edc966f45
feat: enhance file decoding and UI improvements
- Updated dependencies to include all optional Markdown2 extensions
- Improved file content handling to better support non-UTF-8 encodings
- Refined CSS styling for better readability and consistency
- Added new folder and file icons for directory listings
- Modified template paths for consistent asset loading
- Allowed navigation to parent directories in the file viewer

These changes enhance user experience by improving file handling, visual consistency, and navigation within the directory structure.
2024-06-18 18:40:53 +02:00
b836a385b0
feat: add static asset handling and improved UI
Introduced serving static assets with `send_from_directory` to handle CSS and other assets. Added new CSS styles for improved user interface, enhancing readability and presentation. Introduced a base template for better HTML file structure and consistency across web pages. Applied Bootstrap for responsive design and aesthetic improvements. Modified path template to extend base template and updated README section.
2024-06-18 18:20:47 +02:00
117997a5d9
feat: add initial project setup with Flask and Git integration
Introduce the initial project structure for gitcloak, a Python-based private frontend for GitHub repositories. Key changes include:

- Added .gitignore to exclude virtual environment, bytecode files, and cache directories.
- Added LICENSE file using the MIT License.
- Created a basic `pyproject.toml` with project metadata and dependencies.
- Implemented Flask-based application to render repository structure and file contents.
- Added `Git` class to handle interactions with remote GitHub repositories using Dulwich and requests.
- Included HTML template for displaying repo content.
- Created sample `test.py` for testing Git class methods.

This setup enables foundational project functionality and establishes a clear structure for further development.
2024-06-18 17:00:05 +02:00