Skip to content

lionirdeadman/photon

This branch is 1290 commits behind Xyphyn/photon:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

6516e99 Â· Aug 25, 2023
Aug 20, 2023
Aug 7, 2023
Aug 25, 2023
Aug 4, 2023
Jul 26, 2023
Jul 22, 2023
Aug 3, 2023
Jun 21, 2023
Aug 20, 2023
Jul 24, 2023
Aug 25, 2023
Aug 25, 2023
Jun 24, 2023
Jun 21, 2023
Aug 5, 2023
Aug 25, 2023
Aug 3, 2023
Jul 4, 2023
Aug 11, 2023
Jul 8, 2023
Aug 4, 2023

Repository files navigation

Photon

Jump to:

An alternative web client for Lemmy with the UI of Xylo

Screenshots

Screenshot from 2023-08-03 13-23-07

Self-hosting

Put Photon on your own domain for easier onboarding.

Running from image

# Use the env var PUBLIC_INSTANCE_URL to set the default instance URL.
docker run -p 8080:3000 -e PUBLIC_INSTANCE_URL=example.com ghcr.io/xyphyn/photon:latest

Running from repo

More unstable but latest features

Clone the repo:

git clone https://github.com/Xyphyn/photon && cd photon

and run the docker container:

docker build -t photon .

# Use the env var PUBLIC_INSTANCE_URL to set the default instance URL.
docker run -p 8080:3000 -it photon:latest

There you go, you now have an instance of Photon running.

Configuring default settings

The following environment variables can be set to override the default settings:

Variable Values Default Value
PUBLIC_INSTANCE_URL URL lemmy.ml
PUBLIC_LOCK_TO_INSTANCE bool true if PUBLIC_INSTANCE_URL is set
PUBLIC_THEME system|dark|light system
PUBLIC_EXPANDABLE_IMAGES bool true
PUBLIC_MARK_READ_POSTS bool true
PUBLIC_REVERT_VOTE_COLORS bool false
PUBLIC_SHOW_INSTANCES_USER bool false
PUBLIC_SHOW_INSTANCES_COMMUNITY bool true
PUBLIC_SHOW_INSTANCES_COMMENTS bool false
PUBLIC_SHOW_COMPACT_POSTS bool false
PUBLIC_DEFAULT_FEED_SORT SortType Active
PUBLIC_DEFAULT_FEED ListingType Local
PUBLIC_DEFAULT_COMMENT_SORT CommentSortType Hot
PUBLIC_HIDE_DELETED bool true
PUBLIC_HIDE_REMOVED bool false
PUBLIC_FULL_WIDTH_LAYOUT bool false
PUBLIC_EXPAND_SIDEBAR bool true
PUBLIC_DISPLAY_NAMES bool true
PUBLIC_NSFW_BLUR bool true
PUBLIC_NEW_VOTE_BUTTONS bool false
PUBLIC_RANDOM_PLACEHOLDERS bool true

The values for SortType, ListingType, and CommentSortType are defined by the lemmy-js-client library.

Listing Type

https://github.com/LemmyNet/lemmy-js-client/blob/main/src/types/ListingType.ts

  • All
  • Local
  • Subscribed
  • Moderator View (not implemented in Photon)

Sort Type

(case sensitive)

https://github.com/LemmyNet/lemmy-js-client/blob/main/src/types/SortType.ts

  • Active
  • Hot
  • New
  • Old
  • TopDay
  • TopWeek
  • TopMonth
  • TopAll
  • MostComments
  • NewComments
  • TopHour
  • TopSixHour
  • TopTwelveHour (Not implemented in Photon)
  • TopThreeMonths (Not implemented in Photon)
  • TopSixMonths (Not implemented in Photon)
  • TopNineMonths (Not implemented in Photon)
  • TopYear (Not implemented in Photon)

Comment Sort Type

https://github.com/LemmyNet/lemmy-js-client/blob/main/src/types/CommentSortType.ts values:

  • Hot
  • Top
  • New
  • Old (not implemented in Photon)
  • Controversial (not implemented in Photon)

Public Instances

Want your instance added here? Make a GitHub issue or make a PR! (this is for general purpose Photon instances.)

Instance Location Contact
phtn.app 🇺🇸 US West photon@phtn.app
ph.openxng.com 🇸🇬 Singapore about.openxng.com

Donate

You can donate at Buy me a Coffee

Releases

No releases published

Packages

No packages published

Languages

  • Svelte 79.6%
  • TypeScript 19.2%
  • JavaScript 0.5%
  • HTML 0.4%
  • CSS 0.3%
  • Dockerfile 0.0%