A decentralized content & social network, self-hosted by everyone.

9 stars 3 forks 9 watchers JavaScript MIT License
23 Open Issues Need Help Last updated: Feb 27, 2026

Open Issues Need Help

View All on GitHub

AI Summary: This issue proposes making the Progressive Web App (PWA) name customizable. Currently, all PWAs are hardcoded to be named 'epress', which can lead to confusion when multiple instances are installed. The suggested improvement is to default the app name to the node name and allow users to change it in the settings.

Complexity: 2/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: This issue proposes to standardize the spacing of the 'Load More' button on the content list page. The goal is to align its spacing with that of the content items to create a more visually consistent and polished user interface.

Complexity: 1/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: The current search results incorrectly render Markdown due to interference from the Chakra UI Highlight component. This issue proposes replacing the Chakra UI component with the standard HTML `<mark>` tag and configuring ReactMarkdown to support it, ensuring proper Markdown rendering with keyword highlighting.

Complexity: 2/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: This issue proposes adding a limit to the online visitors list in the API to prevent memory exhaustion. A cap of 1,000 addresses will be enforced, using a FIFO approach to remove older entries when the limit is reached, thereby enhancing server stability and security, especially for self-hosted instances.

Complexity: 2/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: This issue proposes enhancements to the frontend authentication system to improve user experience. It addresses problems with JWT token expiration and state management by synchronizing cookie and token expiration, implementing client-side handling of invalid tokens, and leveraging Server-Side Rendering (SSR) to inject authentication state directly into the page. This aims to prevent users from seeing authenticated UI elements when they are no longer logged in and reduce UI flickering.

Complexity: 3/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: This issue proposes implementing image thumbnails and a lightbox viewer to improve performance and user experience. The backend will generate and cache thumbnails on demand, while the frontend will display these thumbnails by default and use a lightbox for full-screen viewing of original images.

Complexity: 3/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: This issue proposes a comprehensive refactoring of the frontend's component structure and organization. The goal is to establish and document clear principles for componentization, leading to improved reusability, maintainability, and developer experience by addressing duplication, over/under-componentization, and a disorganized directory structure.

Complexity: 4/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: This issue proposes a significant refactor of the current internationalization (i18n) implementation to address inefficiencies, poor performance, and a lack of standardization. The goal is to replace the custom solution with `next-intl` for better maintainability, dynamic language loading, and centralized language control driven by a settings API.

Complexity: 4/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: This issue proposes to improve the user experience by eliminating a visible "flicker" caused by an asynchronous token fetch after page load. The solution involves leveraging Server-Side Rendering (SSR) to determine authentication status on the server and inject it directly into the initial page payload, making the status immediately available to the client upon hydration. This will remove the need for the separate API call and simplify client-side logic.

Complexity: 2/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: This issue proposes several UI improvements to enhance user experience and visual consistency. It includes optimizing skeleton screens on the `/publications` and `/connections` pages to better reflect content structure, standardizing empty states on the `/connections` page, and refining the 404 page by increasing icon size, adding prominent "404" text, and implementing internationalization for text.

Complexity: 2/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: This issue aims to improve UI consistency by unifying empty states and the not-found page. It proposes replacing custom empty state implementations on the `/connections` page and the `not-found.jsx` page with a standard Chakra UI `Empty State` component. Additionally, the `not-found.jsx` page will be refactored into a React Server Component (RSC) for better efficiency.

Complexity: 2/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: The `/verify` page currently handles verification client-side, posing security and performance issues, and lacks internationalization due to hardcoded Chinese text. The proposed improvement is to refactor this page into a React Server Component (RSC) to perform all verification logic, including token extraction and API calls, on the server side. Upon success, the server will redirect, and on failure, it will display an internationalized error message.

Complexity: 2/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: This issue proposes a significant refactor of the application's file upload system. It aims to replace the existing `react-drap-drop-file` library with a custom Chakra UI component, unify inconsistent upload implementations across various forms (e.g., `FileModeForm`, profile settings), and enhance the user experience by redesigning file previews to be more accurate and visually appealing.

Complexity: 4/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: The application currently displays blank pages during data fetching, leading to a poor user experience. To improve this, the issue proposes implementing skeleton screens on the `/publications`, `/publications/[:id]`, and `/connections` pages. This enhancement aims to provide visual placeholders, improving perceived performance and making the application feel more responsive.

Complexity: 3/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: The 'Quote Publication' feature currently generates a text link for all `FILE` type posts, even for images. This enhancement requests that when quoting an image `FILE` (e.g., `image/jpeg`), the system should instead generate a Markdown image tag (`![alt text](url)`) to display the image directly, improving user experience by making quotes more visual.

Complexity: 2/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: This improvement request aims to unify publication access by allowing the `/publications/:id` URL to accept both numeric IDs and content hashes. If a content hash is provided, the server will internally resolve it to a numeric ID using a GraphQL API and perform a server-side redirect to the canonical numeric ID URL, eliminating the need for a separate `/redirect` page and improving SEO. All existing links generating content hash URLs will need to be updated.

Complexity: 3/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: This issue proposes a redesign for content cards with `type=FILE` to provide a more distinct and visually optimized layout, featuring edge-to-edge media at the top, followed by author information and then the file description. Additionally, it aims to fix a dark mode bug where the description text for file content displays with an incorrect color.

Complexity: 3/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

A decentralized content & social network, self-hosted by everyone.

JavaScript

AI Summary: This issue proposes aligning the terminology used in EIP-712 data structures with the concepts defined in the project's whitepaper, specifically "Proof of Source" (PoS) and "Statement of Source" (SoS). The current implementation uses different terms (e.g., `ContentSignature` for SoS), causing confusion for developers. The request is to rename the `PrimaryType` fields in relevant EIP-712 messages and conduct a comprehensive review for consistent terminology across all related data structures.

Complexity: 4/5
enhancement good first issue

A decentralized content & social network, self-hosted by everyone.

JavaScript

A decentralized content & social network, self-hosted by everyone.

JavaScript

A decentralized content & social network, self-hosted by everyone.

JavaScript