mirror of
https://github.com/LemmyNet/lemmy.git
synced 2024-11-18 02:14:01 +00:00
5c6258390c
* Adding a way to GetComments for a community given its name only. * Adding getcomments to api docs. * A first pass at locally working isomorphic integration. * Testing out cargo-husky. * Testing a fail hook. * Revert "Testing a fail hook." This reverts commit0941cf1736
. * Moving server to top level, now that UI is gone. * Running cargo fmt using old way. * Adding nginx, fixing up docker-compose files, fixing docs. * Trying to re-add API tests. * Fixing prod dockerfile. * Redoing nightly fmt * Trying to fix private message api test. * Adding CommunityJoin, PostJoin instead of joins from GetComments, etc. - Fixes #1122 * Fixing fmt. * Fixing up docs. * Removing translations. * Adding apps / clients to readme. * Fixing main image. * Using new lemmy-isomorphic-ui with better javascript disabled. * Try to fix image uploads in federation test * Revert "Try to fix image uploads in federation test" This reverts commita2ddf2a90b
. * Fix post url federation * Adding some more tests, some still broken. * Don't need gitattributes anymore. * Update local federation test setup * Fixing tests. * Fixing travis build. * Fixing travis build, again. * Changing lemmy-isomorphic-ui to lemmy-ui * Error in travis build again. Co-authored-by: Felix Ableitner <me@nutomic.com>
1.6 KiB
1.6 KiB
Contributing
Information about contributing to Lemmy, whether it is translating, testing, designing or programming.
Issue tracking / Repositories
Translating
Check out Lemmy's Weblate for translations.
Architecture
Front end
- The front end is written in
typescript
, using a react-like framework called inferno. All UI elements are reusable.tsx
components. - The front end repository is lemmy-ui.
- The routes are at
src/shared/routes.ts
. - The components are located in
src/shared/components
.
Back end
- The back end is written in
rust
, usingdiesel
, andactix
. - The server source code is split into main sections in
src
. These include:db
- The low level database actions.- Database additions are done using diesel migrations. Run
diesel migration generate xxxxx
to add new things.
- Database additions are done using diesel migrations. Run
api
- The high level user interactions (things likeCreateComment
)routes
- The server endpoints .apub
- The activitypub conversions.websocket
- Creates the websocket server.
Linting / Formatting
- Every front and back end commit is automatically formatted then linted using
husky
, andlint-staged
. - Rust with
cargo fmt
andcargo clippy
. - Typescript with
prettier
andeslint
.