Web application for Freedium.cfd https://freedium.cfd/
Find a file
2024-07-28 03:34:15 +05:00
bin Migrate to Docker & logger enhances 2024-02-07 17:17:15 +06:00
core refactor: cython integration & refactor-refactor 2024-07-27 21:55:13 +05:00
data Moving codebase from GitHub 2024-01-31 06:48:20 +06:00
database-lib database: make additional checkups 2024-07-22 17:17:37 +05:00
rl_string_helper string parser: Cython portage TypeError bug fixes 2024-07-28 03:34:15 +05:00
scripts proxy: make proxying requests 2024-07-21 20:35:07 +05:00
server refactor: cython integration & refactor-refactor 2024-07-27 21:55:13 +05:00
static Moving codebase from GitHub 2024-01-31 06:48:20 +06:00
.dockerignore prod: docker compose refactor filenames 2024-07-27 14:11:33 +05:00
.env_template Major Refactor 2024-03-27 21:49:52 +05:00
.gitignore Update .gitignore file 2024-02-07 15:14:15 +06:00
.gitmodules Moving codebase from GitHub 2024-01-31 06:48:20 +06:00
CaddyfileDev refactor: cython integration & refactor-refactor 2024-07-27 21:55:13 +05:00
CaddyfileDevTemplate refactor: cython integration & refactor-refactor 2024-07-27 21:55:13 +05:00
CaddyfileMaintance Fixing 2024-02-23 11:50:14 +06:00
CaddyfileProd Caddy: Add Cloudflare challenge page to the ignore path list 2024-04-01 05:44:27 +05:00
CaddyfileProdTemplate refactor: cython integration & refactor-refactor 2024-07-27 21:55:13 +05:00
docker-compose.yml refactor: cython integration & refactor-refactor 2024-07-27 21:55:13 +05:00
Dockerfile docker build: adding Cython dependency and gcc 2024-07-28 03:31:02 +05:00
DockerfileCaddy Finally fixing containre health problem 2024-02-09 12:28:56 +06:00
DockerfileDante refactor: cython integration & refactor-refactor 2024-07-27 21:55:13 +05:00
poetry.lock prod: refactor & migrate to postgresql 2024-07-20 12:14:54 +05:00
prod.docker-compose.yml prod: docker compose refactor filenames 2024-07-27 14:11:33 +05:00
pyproject.toml prod: refactor & migrate to postgresql 2024-07-20 12:14:54 +05:00
README.md donation: update link from BMC to Patreon 2024-07-07 13:51:42 +05:00
requirements-dev.txt Moving codebase from GitHub 2024-01-31 06:48:20 +06:00
requirements-fast.txt chore: refactor & optimize code 2024-07-22 15:10:50 +05:00
requirements.txt chore: refactor & optimize code 2024-07-22 15:10:50 +05:00
ruff.toml Moving codebase from GitHub 2024-01-31 06:48:20 +06:00
test.py prod: minor problem fixes 2024-06-10 20:59:20 +06:00

Freedium: Your paywall breakthrough for Medium!

Become a Patron

FAQ

What is happened to GitHub organization?

Our whole Github organization is not public for now. Reddit community, that was beginning all of that unfourtunately also gone. So we have moved to Codeberg

Why did we create Freedium?

In mid-June to mid-July 2023, Medium changed their paywall method, and all old paywall bypass methods we had stopped working. So I became obsessed with the idea of creating a service to bypass Medium's paywalled posts. Honestly I am not a big fan of Medium, but I sometimes read articles to improve my knowledge.

How does Freedium work?

In the first version of Freedium, we reverse-engineered Medium.com's GraphQL endpoints and built our own parser and toolkits to show you unpaywalled Medium posts. Unfortunately, Medium closed this loophole and nowadays we just pay subscriptions and share access through Freedium. Sometimes we got a bugs because of the self-written parser, but we are working to make Freedium bug-free.

What language are being used?

We use Python, with Jinja template builder, and some JS magic in Frontend :)

Wow! I would like to contribute to Freedium. How can I do that?

We need volunteers who have Medium subscriptions because we might get banned by Medium. And if you developer you can start from the this (https://codeberg.org/Freedium-cfd/web) repository.

Plans, future?

Speed up Freedium, and probably create open source Medium frontend in next life

Tech stack:

  • FastAPI, Gunicorn, Unicorn as worker,
  • Tailwinds CSS v3
  • Dragonfly (Redis like key-value database)
  • Jinja2
  • Python 3.9+
  • Caddy
  • Sentry

Local run:

Requirements:

  • Docker
  • git
  • Linux. Officially, we can't guarantee that Freedium will work on other OS.

We need configure our Freedium instance. Copy .env_template to .env configuration file and set values, required for you.

git clone https://codeberg.org/Freedium-cfd/web/ ./web --depth 1
cd ./web
cp .env_template .env
# do some changes in .env, if you want
sudo docker-compose -f docker-compose-dev.yml up

And now you can access local instance of Freedium by opening browser and type http://localhost:6752.