Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Toolshare

The CU Boulder Faculty AI Exchange — a pilot with the Research & Innovation Office, live at arpg.colorado.edu/toolshare (CU Boulder Google SSO required).

Faculty, staff, and students share AI tools, skills, and workflows: bare links, blog-style write-ups, small file artifacts (Claude skill files, prompt templates, scripts), and GitHub repo cards with live metadata. Entries are up/down-voted and discussed, the front page segments by Beginner / Intermediate / Advanced, and a vote-weighted leaderboard ranks contributors. First login runs a short one-time survey (how tools are paid for, what's in use, comfort level) whose aggregates inform RIO — individual answers are never shown.

Architecture

  • backend/toolshare_app/ — FastAPI + SQLAlchemy (async SQLite). The package runs two ways:
    • Integrated (current pilot): integrate.py mounts the API inside an existing FastAPI host app under /api/toolshare/*, reusing the host's Google-SSO session (@colorado.edu gate) — deployable with zero new services, ports, or nginx changes.
    • Standalone: toolshare_app.main:app on :8001 with its own OAuth routes (see deployment/ and MIGRATION.md).
  • frontend/ — React 18 + Vite SPA, hash-routed so it can be hosted as plain static files. Markdown rendered with react-markdown (no raw HTML passthrough). Editorial "faculty gazette" design.
  • deployment/ — pilot deploy script, standalone systemd/nginx configs, and the pilot→standalone migration guide.

Safety details: uploads are extension-allowlisted, size-capped, stored under random names, and always served as Content-Disposition: attachment + application/octet-stream + nosniff; votes are unique per user; moderation is post-first with env-configured admins.

Local development

cd backend
python3.12 -m venv .venv && .venv/bin/pip install -r requirements.txt
cp .env.example .env   # use the "Local development" block; set DEV_FAKE_USER
.venv/bin/uvicorn toolshare_app.main:app --port 8001

cd ../frontend
npm install && npm run dev   # http://localhost:5173/toolshare/, "Dev sign-in"

License

Not yet chosen — contact ARPG before reuse.

About

CU Boulder Faculty AI Exchange — RIO pilot (FastAPI + React)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages