Kumi
e96a39448a
Enhanced the Article model to include IFrame and GithubGist nodes, enabling rendering of embedded content such as iframes and GitHub gists. Implemented a new GithubClient to fetch gist content and updated MediumClient to handle iframe and gist types. Added styles and template support for iframes and gists in articles. These changes improve the flexibility of article content, enabling richer media experiences. |
||
---|---|---|
src/small | ||
.gitignore | ||
LICENSE | ||
pyproject.toml | ||
README.md |
Small
Small is an alternative frontend for Medium articles, built with Flask. It allows users to read Medium articles without the clutter and distractions of the original Medium interface.
Features
- Clean, minimalist interface for reading Medium articles
- Fetches article content directly from Medium's GraphQL API
- Parses and displays article content, including text and basic formatting
- Responsive design for comfortable reading on various devices
Installation
-
Clone the repository:
git clone https://git.private.coffee/PrivateCoffee/small.git cd small
-
Create a virtual environment and activate it:
python -m venv venv source venv/bin/activate
-
Install the package:
pip install .
Usage
-
Start the Flask development server:
small
-
Open your web browser and navigate to
http://localhost:5000
-
To read a Medium article, replace
https://medium.com
in the article's URL withhttp://localhost:5000
For example:
- Original URL:
https://medium.com/@username/article-title-123abc
- Small URL:
http://localhost:5000/@username/article-title-123abc
- Original URL:
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- Inspired by the Scribe project built with Crystal and Lucky
- Thanks to Medium for providing the content through their API
Disclaimer
This project is not affiliated with, endorsed, or sponsored by Medium. It's an independent project created to provide an alternative reading experience for Medium content.