GithubHelp home page GithubHelp logo

saturnus's Introduction

Saturnus is unmaintained!

Update (July 1, 2023): Due to new Reddit API usage rules, I've now taken down the hosted website in order to not accidentally go over the limits of the API free tier. Now the only way for you to try this is to clone and build a local copy with your own Client ID.

I'm super busy with my job nowadays so unfortunately I won't have time to work on this project at the moment. It's still deployed and usable! But don't expect any new features or fixes in the near future.

I've improved my front-end skills a lot since starting this project, so rather than continuing to build on this pile of spaghetti code, I will likely do a rewrite in another repo.

Saturnus

A work in progress browser client for Reddit.

Ever since the new Reddit was launched, many users have voiced their dislike of how clunky it feels. The aim of this project is to create a more light-weight Reddit experience, taking inspiration from the great iOS app Apollo for Reddit, Facebook, and Twitter.

Develop locally

This section describes how to set up the project to develop on your local computer. You need Node.js and npm installed on your computer.

Reddit API

This project uses Reddit's API. If you want to develop locally or deploy your own version, you need to go here and create a new web app. You should then copy .env.example into a new file .env and add your Reddit Client ID.

For myself, I have actually set up two "reddit apps": one where the redirect uri is http://localhost:3000 for my local development and the other whose redirect uri is the uri of my hosted production version for the deploy environment.

Initial setup

Assuming you have set up your .env file, follow the below steps:

Install dependencies:

$ npm install

Start local development:

$ npm start

Your local app should now be running on http://localhost:3000!

Build and deploy

This repo is connected to Netlify which automatically builds and deploys from the master branch.

To build and deploy in some other way, follow the same steps as the set up for local development, up until the npm start command. Then, run the following command:

$ npm run build

This will compile all code and put it into the /build folder. You can now use any static website hosting to deploy this folder, for example with your own Netlify setup or a remote server with nginx or something!

Helpful editor extensions

Throughout this project, I organize content within files by using comments like this:

// MARK: Helper functions

function thing() {}

This is actually a convention I learned in Swift, but I've found it useful in JS as well. I recommend the VS Code extension TODO Highlight with the following config:

"todohighlight.keywords": [
    {
      "text": "MARK:",
      "isWholeLine": true,
      "backgroundColor": "lightblue",
      "color": "#ffffff"
    }
  ]

This config will highlight the lines that contain the MARK comments. Obviously, you can use any other colors if you prefer.

saturnus's People

Contributors

willwull avatar dependabot[bot] avatar

Stargazers

 avatar Chase avatar Natalia avatar  avatar Erlend Sogge Heggen avatar Butonix avatar Adith Radharamanan avatar TheHackerCoding avatar Arijit Roy avatar  avatar  avatar  avatar  avatar Noah avatar Owen avatar  avatar  avatar  avatar Sefa Eyeoglu avatar Matthias Grandl avatar xike avatar Ihsan avatar

Watchers

 avatar  avatar

saturnus's Issues

Show post flair

The posts in the feed should have their flairs next to the titles

Show media previews for posts in feed

Will add more as I discover them. Not listed in any particular order:

  • Images
  • Self-texts
  • Rich videos (YouTube, Gfycat)
  • Imgur
    • Normal images
    • Non-direct links
    • Imgur gifv
    • Imgur albums (may need Imgur api)
  • v.reddit videos
  • regular links

Show cross posts

Reddit has a special component for when a post is a crosspost.

Improve video player

Missing features:

  • Play sound
  • Skipping by clicking on the progress bar
  • Loading indicator

Website is broken

Website is broken.
I think its because it cannot retrieve any post from reddit api.

image

Default post sorting not working

Currently, when going from Hot to Top, it should set it to top of the month by default, but it seems like it still fetches the hot posts.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.