- TypeScript 95.3%
- JavaScript 2.7%
- CSS 1.5%
- Dockerfile 0.5%
add redirect to username or tag when using @ symbol or # symbol at the start of the query |
||
|---|---|---|
| public | ||
| src | ||
| .dockerignore | ||
| .env.example | ||
| .eslintrc.json | ||
| .gitignore | ||
| .prettierignore | ||
| .prettierrc.json | ||
| docker-compose.yaml | ||
| Dockerfile | ||
| env.mjs | ||
| LICENSE | ||
| next.config.mjs | ||
| package.json | ||
| pnpm-lock.yaml | ||
| postcss.config.cjs | ||
| README.md | ||
| tailwind.config.cjs | ||
| tsconfig.json | ||
Proxigram
A privacy focused and open source alternative front-end for Instagram
Table of Contents
About The Project
Proxigram: A privacy focused and and open source front-end for Instagram. Inspired by ProxiTok, Nitter, LibreMdb, and many others
Why?
We all know the record of bad practices that Meta has done against user's privacy. Regardless of that, Instagram still is one of the largest social media in the world. This makes it imposible to not have to check Instagram sometimes, but it can be hard to use Instagram when the website is filled with sign-up banners everywhere, is tracking all your activity and wants you to install the official app. This is where Proxigram comes in.
There are other Instagram viewers out there, but some of them can be a little tricky to use since most of them have ads, need JavaScript or are full of captchas and trackers. Proxigram does the job for you and goes to these services, parses the data, and gives it back to you.
Using an instance of Proxigram, you can browse Instagram without JavaScript while retaining your privacy with all the requests going through the server. The client never talks to Instagram or other service providers (unless it is specified).
Screenshots
Features
- See user profile and feed
- See individual post
- See tags
- Stories
- RSS feeds
/{username}/rss-> Feed/{username}/stories/rss-> Stories
- API
/api/{username}-> profile info/api/{username}/posts-> profile feed- query:
- cursor
- query:
/api/{username}/stories-> profile stories/api/p/{shortcode}-> post/api/p/{shortcode}/comments-> post's comments/api/tag/{tag}-> tag posts
Roadmap
- Add stories
- Add highlights
- Add rss feed
- Add settings
- Enable or disable proxy
- Infinity scroll
- Redirect URLs
- Choose providers
- Healthiness of providers
See the open issues for a full list of proposed features and known issues.
Resources
Installation
As Proxigram is made with Next.js, you can deploy it anywhere where Next.js is supported. Below are a few other methods:
Manual
- Install Node.js (Node.js website)
- Install git (Git website)
- Install redis (Redis website)
- Clone and setup the project
Clone the repository.
git clone https://codeberg.org/ThePenguinDev/proxigram.git
Move to the folder.
cd proxigram
Change the configuration to your needs.
cp .env.example .env
Replace 'pnpm' with yarn or npm if you use those.
pnpm install
If headless providers are enabled, you need to install the browser. Use one of these commands to install the browser binary:
- pnpm add playwright-chromium@1.34.3
- yarn add playwright-chromium@1.34.3
- npm install playwright-chromium@1.34.3
Create build.
pnpm build
Start redis server.
If "CACHE" is set to false (not recommended), it is not necessary. Check .env
redis-server (or docker)
Start the server.
pnpm start
Docker
Clone the repository.
git clone https://codeberg.org/ThePenguinDev/proxigram.git
Move to the folder.
cd proxigram
Change the configuration to your needs.
cp .env.example .env
Start containers.
docker compose up -d
License
Distributed under the AGPLv3 License. See LICENSE for more information.
Legal Notice
Proxigram does not host any content. All content shown on any Proxigram instances is from Instagram. Any issue with the content shown on any instance of Proxigram, needs to be reported to Instagram, not the maintainer's ISP or domain provider. Proxigram is not affiliated with Meta Platforms, Inc.
