Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
96 commits
Select commit Hold shift + click to select a range
d6ea00f
Get basic working (#109)
itexpert120 Mar 25, 2025
810bb9a
fix polyfills
elliotBraem Mar 25, 2025
e8599af
Explore Page (#108)
saadiqbal-dev Mar 25, 2025
30cbbfe
Header + Explore Page Style (#113)
saadiqbal-dev Mar 27, 2025
d4018f7
Profile page (#120)
itexpert120 Apr 11, 2025
cf66339
[FEATURE] Create Feed Page - DRAFT (#121)
saadiqbal-dev Apr 11, 2025
79d572d
Curate Engine Step 1
elliotBraem Apr 11, 2025
db92ef9
update to main
elliotBraem Apr 11, 2025
e369f24
fmt
elliotBraem Apr 11, 2025
1b4c006
Feat/submissions page (#127)
saadiqbal-dev Apr 28, 2025
8d08308
Merge branch 'main' of https://github.com/PotLock/curatedotfun into s…
elliotBraem Apr 28, 2025
908f537
Feed Page Tabs (#130)
saadiqbal-dev Apr 30, 2025
6d9aeb9
Merge branch 'main' of https://github.com/PotLock/curatedotfun into s…
elliotBraem May 1, 2025
6fc7637
set tanstack routes (#132)
elliotBraem May 1, 2025
ea2137c
[Task]: Add connect button to feed page (#131)
louisdevzz May 1, 2025
0ecfab3
uses prod data
elliotBraem May 2, 2025
cd12908
Update changes to latest staging
saadiqbal-dev May 2, 2025
ba55dd3
Revert "Update changes to latest staging"
saadiqbal-dev May 2, 2025
1c4044a
Fix Sort By Oldest (#136)
louisdevzz May 9, 2025
8cd6e82
UI fixes (#138)
saadiqbal-dev May 9, 2025
5e91466
Fix: Leaderboard improvements (#140)
louisdevzz May 9, 2025
59de163
clean up
elliotBraem May 10, 2025
4a411fb
wallet wip
elliotBraem May 12, 2025
72ea8fa
todo
elliotBraem May 12, 2025
716b956
Merge branch 'main' of https://github.com/PotLock/curatedotfun into s…
elliotBraem May 12, 2025
94bf4e4
Merge branch 'staging' into feat/wallet
elliotBraem May 12, 2025
3ad71c0
auth flow, wip
elliotBraem May 12, 2025
5561575
types clean up
elliotBraem May 12, 2025
8dda6af
fix types
elliotBraem May 12, 2025
9078b4e
login modal wip
elliotBraem May 12, 2025
7110ff5
modals
elliotBraem May 12, 2025
af6bfda
controller, service, successful create account
elliotBraem May 13, 2025
c3b2582
clean with data, metadata, and pattern, validation, and json schema
elliotBraem May 13, 2025
592fa49
add migration doc
elliotBraem May 13, 2025
2baaa98
add activity and delete user
elliotBraem May 13, 2025
8b92f11
fix migration
elliotBraem May 13, 2025
ad177fa
add seed remote method
elliotBraem May 13, 2025
620a554
fix naming
elliotBraem May 13, 2025
ac88430
fix script call
elliotBraem May 13, 2025
5edba9d
file extension
elliotBraem May 13, 2025
5cb5ec5
remove build schema
elliotBraem May 13, 2025
6eef52a
proper build time
elliotBraem May 13, 2025
017e0f0
fix Dockerfile
elliotBraem May 13, 2025
1f77f1d
rsbuild
elliotBraem May 13, 2025
5aefc9f
Standard Header Component + Responsivenss Fixes (#146)
saadiqbal-dev May 13, 2025
750a427
fix broken link
saadiqbal-dev May 13, 2025
1473e34
don't distribute on staging
elliotBraem May 14, 2025
6aff38c
fix path
elliotBraem May 14, 2025
d93df7a
env log
elliotBraem May 14, 2025
9bbcc39
comment out
elliotBraem May 14, 2025
754209f
railway env
elliotBraem May 14, 2025
6607554
fix: Profile adjustments (#153)
louisdevzz May 16, 2025
4126f79
Login Modal Fixes (#154)
saadiqbal-dev May 18, 2025
3b1c83b
organize
elliotBraem May 18, 2025
19c491a
fmt
elliotBraem May 18, 2025
14baf96
update feeds (#156)
elliotBraem May 19, 2025
cdf9a14
Leaderboard width fixes
saadiqbal-dev May 19, 2025
6c226e0
feat: save profile image to pinata (#158)
dungpt99 May 20, 2025
b77d92d
Feat Integrate NEAR Solana, Ethereum wallet selection (#159)
louisdevzz May 22, 2025
7662e1d
wip
elliotBraem May 22, 2025
35bb5eb
Feed Submission + Feed Review Page (#160)
saadiqbal-dev May 22, 2025
911ec47
Feat Integrate NEAR Solana, Ethereum wallet selection (#159)
louisdevzz May 22, 2025
40d3890
Feed Submission + Feed Review Page (#160)
saadiqbal-dev May 22, 2025
a9506ec
remove agent twitter client
elliotBraem May 22, 2025
314aa39
fmt
elliotBraem May 22, 2025
627d8fa
convert db
elliotBraem May 22, 2025
237d5de
wip
elliotBraem May 22, 2025
2634dca
service provider di
elliotBraem May 22, 2025
b22c634
activity refactor
elliotBraem May 22, 2025
dfddbd7
near config
elliotBraem May 22, 2025
21a30a7
source plugin
elliotBraem May 22, 2025
cb6b7ee
remove leaderboard api endpoint
elliotBraem May 22, 2025
57db635
rspack aliases
elliotBraem May 22, 2025
1c0c610
fmt
elliotBraem May 22, 2025
b7cea16
no global config, get feed config by id
elliotBraem May 22, 2025
2a61055
service clean up
elliotBraem May 23, 2025
1f54369
minor fixes (#164)
saadiqbal-dev May 26, 2025
ccc0f95
type fixes and test config
elliotBraem May 26, 2025
59d36d4
Merge branch 'staging' of https://github.com/PotLock/curatedotfun int…
elliotBraem May 26, 2025
f0e2b6b
fix pnpm lock
elliotBraem May 26, 2025
0958c20
implement base interfaces
elliotBraem May 26, 2025
b9b668a
add types
elliotBraem May 26, 2025
0ccf451
fix build errors
elliotBraem May 26, 2025
3eb21ac
utils
elliotBraem May 26, 2025
5e33887
fix install
elliotBraem May 26, 2025
fa771f7
remove node_modules cache
elliotBraem May 26, 2025
20ad181
shared db and types
elliotBraem May 26, 2025
65c4864
activity trpc
elliotBraem May 26, 2025
06cd525
fixing types
elliotBraem May 26, 2025
2a999f7
trpc activity on frontend, unified auth
elliotBraem May 26, 2025
232772a
api to trpc
elliotBraem May 27, 2025
491c53c
wip
elliotBraem May 27, 2025
8b1fe6c
fix routers
elliotBraem May 27, 2025
6168b68
bun conversion, building
elliotBraem May 28, 2025
227d7f2
move errors
elliotBraem May 28, 2025
f357887
wip
elliotBraem May 29, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
139 changes: 0 additions & 139 deletions .clinerules

This file was deleted.

50 changes: 50 additions & 0 deletions .clinerules/repository-analysis-workflow.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
## Brief overview
This rule outlines a comprehensive workflow for Cline to analyze a software repository. The objective is to thoroughly understand its architecture, data flows, and key components, subsequently producing markdown documentation and actionable recommendations for improvement and standardization. This process is designed to be adaptable to various codebases.

## Analysis Workflow Steps
- **Initial Information Gathering**:
- Begin with a top-level overview of the repository structure. This can be achieved using `list_files` or by reviewing an initial file manifest if provided by the system.
- Identify key directories (e.g., `src`, `services`, `db`, `routes`) and primary entry points (e.g., `index.ts`, `app.ts`, main schema files).
- **Iterative Deep Dive**:
- Systematically request and analyze core files using the `read_file` tool. Start with foundational layers (e.g., database schemas, ORM setup, core utilities) and progress towards higher-level components (e.g., repositories, services, API controllers, application bootstrap).
- Pay close attention to `import` and `export` statements to map dependencies and understand relationships between different modules and files.
- For complex systems, analyze components layer by layer (e.g., data access -> business logic -> API presentation).
- **Understanding Key Components**:
- **Data Layer**: Analyze database schema definitions, ORM configurations (if any), repository patterns, and data model structures (e.g., Zod schemas for JSONB columns).
- **Service Layer**: For each service, determine its primary purpose, public methods (including their arguments and return types if inferable), key dependencies (other services, repositories), and how it encapsulates business logic.
- **API Layer**: Examine API route definitions, how requests are handled, request/response validation mechanisms, authentication/authorization middleware, and the connection between routes and services.
- **Configuration Management**: Understand how application settings (global, per-feed, plugin-specific) are loaded and accessed (e.g., from files, environment variables, or database).
- **Plugin System (if applicable)**: Analyze how plugins are loaded, managed, and integrated (e.g., module federation, lifecycle methods).
- **Application Setup & Entry Point**: Review how the application is initialized, middleware is configured, and the server is started.
- **Identifying Patterns and Flows**:
- Trace 2-3 critical data flows through the application (e.g., content ingestion, user authentication, request processing for a key feature).
- Identify common design patterns employed (e.g., Service-Oriented Architecture, Repository Pattern, Dependency Injection via ServiceProvider).
- Note conventions for naming, styling, and project structure.

## Documentation Output
- **Format**: Markdown.
- **Content**:
- High-level architecture overview (potentially with a Mermaid diagram).
- Detailed breakdown of key layers/components (Data, Service, API, Config, Plugins, etc.).
- Description of major data flows.
- List of identified patterns and conventions.
- Summary of each service's purpose, key methods (with arguments if possible), and its primary dependencies.
- Overview of the database schema.
- **File Structure**: A main analysis document, potentially linking to more detailed documents for specific complex areas if necessary.

## Recommendations Output
- **Format**: Markdown, potentially separate files for different categories of recommendations (e.g., `config_recommendations.md`, `rbac_recommendations.md`, `code_cleanup.md`).
- **Content**:
- **Consolidation & Cleanup**: Identify redundant code, areas for simplification, and opportunities to consolidate similar functionalities.
- **Better Strategy**: Suggest improvements to architectural patterns, data models, or service interactions.
- **Files to Delete/Refactor**: Pinpoint obsolete files or those needing significant rework.
- **Standardization**: Propose ways to standardize coding practices, naming conventions, error handling, dependency management, etc., across the codebase.
- **Cross-Codebase Consistency**: Where applicable, recommend patterns or approaches observed in the analyzed repository that could be beneficially applied to other codebases for consistency.
- **Specific Goals**: If the user has specific goals (e.g., "move all config to DB"), recommendations should directly address how to achieve these.
- **Actionability**: Recommendations should be specific and provide clear instructions or examples where possible.

## Interaction Style during Analysis
- **Iterative Updates**: Provide regular updates on the learning progress and understanding of different components.
- **Clarification**: Use `ask_followup_question` if critical information is missing or ambiguous.
- **Tool Usage**: Primarily use `read_file` for information gathering. Use `list_files` or `search_files` if the initial file manifest is insufficient or specific patterns need to be located.
- **User Confirmation**: After analyzing a significant chunk or a key component, summarize understanding before moving to the next, to ensure alignment. (This can be done via `plan_mode_respond`).
3 changes: 1 addition & 2 deletions .github/workflows/deployment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:

strategy:
matrix:
platform: [ linux/amd64 ]
platform: [linux/amd64]

steps:
- name: Checkout code
Expand Down Expand Up @@ -43,4 +43,3 @@ jobs:
platforms: ${{ matrix.platform }}
push: true
tags: ghcr.io/${{ env.REPO }}:${{ github.sha }}

10 changes: 5 additions & 5 deletions .github/workflows/near-rewards.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
name: NEAR Protocol Rewards Tracking
on:
schedule:
- cron: '0 */12 * * *' # Every 12 hours
workflow_dispatch: # Manual trigger
- cron: "0 */12 * * *" # Every 12 hours
workflow_dispatch: # Manual trigger
push:
branches: [ main ] # Start on main branch updates
branches: [main] # Start on main branch updates

jobs:
calculate-rewards:
Expand All @@ -17,12 +17,12 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '18'
node-version: "18"

- name: Calculate Rewards
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_REPO: ${{ github.repository }}
run: |
npm install -g near-protocol-rewards@latest
near-protocol-rewards calculate
near-protocol-rewards calculate
16 changes: 16 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"cSpell.words": [
"crowdsource",
"ilhagirl",
"jpollock",
"karmaticacid",
"morica",
"murica",
"oklch",
"plugrel",
"plungrel",
"POTLOCK",
"SCURATE",
"yegorgolovnia"
]
}
28 changes: 11 additions & 17 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
# Base stage with common dependencies
FROM node:18-alpine AS base
FROM oven/bun:latest AS base

# Install pnpm
RUN npm install -g pnpm turbo

# Builder stage for pruning the monorepo
FROM base AS pruner
Expand All @@ -21,22 +19,21 @@ WORKDIR /app

# Copy pruned package.json files and workspace config
COPY --from=pruner /app/out/json/ .
COPY --from=pruner /app/out/pnpm-lock.yaml ./pnpm-lock.yaml
# COPY --from=pruner /app/out/bun.lockb ./bun.lockb # bun.lockb should be generated by bun install
COPY --from=pruner /app/turbo.json ./turbo.json
COPY --from=pruner /app/pnpm-workspace.yaml ./pnpm-workspace.yaml

# Install dependencies using pnpm workspaces
RUN pnpm install --frozen-lockfile
# Install dependencies using bun workspaces
RUN bun install --frozen-lockfile

# Copy source code from pruned monorepo
COPY --from=pruner /app/out/full/ .

# Build the application using turbo (which will respect the dependencies in turbo.json)
ENV NODE_ENV="production"
RUN pnpm run build
RUN bun run build

# Production stage
FROM node:18-alpine AS production
FROM oven/bun:latest AS production
WORKDIR /app

# Create a non-root user for security
Expand All @@ -48,16 +45,13 @@ COPY --from=builder --chown=app:app /app/backend/package.json ./backend/package.
COPY --from=builder --chown=app:app /app/backend/drizzle.config.ts ./backend/drizzle.config.ts
COPY --from=builder --chown=app:app /app/backend/src/services/db/migrations ./backend/src/services/db/migrations
COPY --from=builder --chown=app:app /app/backend/src/services/db/schema.ts ./backend/src/services/db/schema.ts
COPY --from=builder --chown=app:app /app/backend/src/services/db/schema ./backend/src/services/db/schema
COPY --from=builder --chown=app:app /app/package.json ./
COPY --from=builder --chown=app:app /app/pnpm-lock.yaml ./
COPY --from=builder --chown=app:app /app/pnpm-workspace.yaml ./pnpm-workspace.yaml
COPY --from=builder --chown=app:app /app/bun.lockb ./bun.lockb
COPY --chown=app:app curate.config.json ./

# Install pnpm
RUN npm install -g pnpm

# Install only production dependencies
RUN cd backend && pnpm install --prod --frozen-lockfile
# Install only production dependencies for the backend
RUN cd backend && bun install --production

# Use the non-root user
USER app
Expand All @@ -66,4 +60,4 @@ USER app
EXPOSE 3000

# Start the application
CMD ["pnpm", "run", "--dir", "backend", "start"]
CMD ["bun", "run", "--cwd", "backend", "start"]
15 changes: 8 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,31 +74,31 @@ graph TD
Twitter["Twitter Source Plugin"]
style Twitter color:black
end

%% Submission Processing
subgraph Submission["Submission Processing"]
SubmissionService["Submission Service"]
Moderation["Curator Moderation"]
style SubmissionService color:black
style Moderation color:black
end

%% Content Processing
subgraph Processing["Content Processing"]
ProcessorService["Processor Service"]
GlobalTransform["Global Transformations"]
style ProcessorService color:black
style GlobalTransform color:black
end

%% Distribution
subgraph Distribution["Distribution"]
DistributionService["Distribution Service"]
DistTransform["Distributor-specific Transforms"]
style DistributionService color:black
style DistTransform color:black
end

%% Distributor Plugins
subgraph Distributors["Distributor Plugins"]
Telegram["Telegram"]
Expand All @@ -110,7 +110,7 @@ graph TD
style Notion color:black
style Supabase color:black
end

%% Flow connections
Sources --> SubmissionService
SubmissionService --> Moderation
Expand All @@ -119,12 +119,12 @@ graph TD
GlobalTransform --> DistributionService
DistributionService --> DistTransform
DistTransform --> Distributors

%% Styling
classDef service fill:#f9f,stroke:#333,stroke-width:2px
classDef plugin fill:#bbf,stroke:#333,stroke-width:1px
classDef process fill:#bfb,stroke:#333,stroke-width:1px

class SubmissionService,ProcessorService,DistributionService service
class Twitter,Telegram,RSS,Notion,Supabase plugin
class Moderation,GlobalTransform,DistTransform process
Expand All @@ -133,6 +133,7 @@ graph TD
### Key Components

- **[Frontend](./frontend/README.md)**

- React-based web interface
- Built with RSBuild and Tailwind CSS
- Handles user interactions and submissions
Expand Down
Loading
Loading