The project is configured to run a local Community Solid Server (CSS) with ACP (Access Control Policy) enabled.
- Config file:
.cssconfig.json- Has ACP enabled viacss:config/ldp/authorization/acp.json - Seed config:
seed-config.json- Contains your account credentials (create fromseed-config.json.example) - Data directory:
data/- Where the server stores pod data
-
Copy the example seed config:
cp seed-config.json.example seed-config.json
-
Edit
seed-config.jsonand replace with your real email, password, and pod name:[ { "email": "your-email@example.com", "password": "your-password", "pods": [ { "name": "your-pod-name" } ] } ]
Note: seed-config.json is in .gitignore to prevent committing your password.
npm run start:cssThis will start CSS on port 3000 with:
- ACP authorization enabled
- Seeded accounts (alice and bob)
- Data stored in
data/directory
npm run start:devThis runs both:
- CSS on port 3000
- Next.js dev server on port 3001
After seeding, you can log in with any of these accounts:
-
Ruky (your account):
- Email:
rukyjacob@gmail.com - Password:
Test123$ - Pod URL:
http://localhost:3000/ruky/ - WebID:
http://localhost:3000/ruky/profile/card#me
- Email:
-
Alice:
- Email:
alice@example.com - Password:
alice123 - Pod URL:
http://localhost:3000/alice/ - WebID:
http://localhost:3000/alice/profile/card#me
- Email:
-
Bob:
- Email:
bob@example.com - Password:
bob123 - Pod URL:
http://localhost:3000/bob/ - WebID:
http://localhost:3000/bob/profile/card#me
- Email:
-
Charlie:
- Email:
charlie@example.com - Password:
charlie123 - Pod URL:
http://localhost:3000/charlie/ - WebID:
http://localhost:3000/charlie/profile/card#me
- Email:
The seed config includes 4 test accounts (ruky, alice, bob, charlie) for testing sharing.
Steps to test:
- Start the server:
npm run start:css - In your Next.js app (port 3001), log in as ruky (
rukyjacob@gmail.com/Test123$) - Navigate to ruky's pod storage
- Create a folder or file
- Click "Share" on the resource
- Add a WebID to share with (e.g.,
http://localhost:3000/alice/profile/card#me) - Select access level (Editor/Viewer) and click "Done"
Quick WebIDs for sharing:
- Alice:
http://localhost:3000/alice/profile/card#me - Bob:
http://localhost:3000/bob/profile/card#me - Charlie:
http://localhost:3000/charlie/profile/card#me
- The server uses ACP (not WAC), so ACRs should be at
.acrlocation - Make sure to use
http://localhost:3000as the OIDC issuer in your app - The server will create pods automatically when accounts are seeded