The development server is live at: http://localhost:5173/
A fully functional React SPA with:
- Home (
/) - Overview and navigation - Fusion Query (
/fusion) - Query fusion reactions - Fission Query (
/fission) - Query fission reactions - Two-To-Two Query (
/twotwo) - Query 2-2 transmutation reactions - Show Element Data (
/element-data) - Element property viewer - Tables in Detail (
/tables) - Database schema browser - All Tables (
/all-tables) - SQL query editor - Cascades (
/cascades) - Cascade simulation interface
- Responsive sidebar navigation (mobile-friendly)
- Query builder interfaces with filters
- Mock data for testing UI/UX
- CSV export functionality
- SQL preview panels
- TypeScript type safety throughout
lenr.academy/
├── src/
│ ├── components/ # UI components
│ │ └── Layout.tsx # Main layout with sidebar
│ ├── pages/ # Route pages (one per tool)
│ ├── services/ # Data layer (currently mock data)
│ ├── types/ # TypeScript definitions
│ ├── App.tsx # Router setup
│ └── main.tsx # Entry point
├── docs/ # Original nanosoft.txt documentation
├── package.json
├── vite.config.ts
├── tailwind.config.js
└── README.md
# Development
npm run dev # Start dev server (already running!)
# Building
npm run build # Build for production
npm run preview # Preview production build
# Code Quality
npx tsc --noEmit # Check TypeScript errors
npm run lint # Run ESLint
# Stop dev server
# Press Ctrl+C in the terminal where it's running- Create file in
src/pages/YourPage.tsx - Add route in
src/App.tsx - Add link in
src/components/Layout.tsxnavigation array
- Global styles:
src/index.css - Tailwind utilities: Use className with Tailwind classes
- Component-specific: Add to the component file
- Edit
src/types/index.tsfor TypeScript interfaces - Update
src/services/mockData.tsfor mock data
The app currently uses mock data. To connect real Parkhomov tables:
npm install sql.js
# Create src/services/database.ts
# Load .db file or create from CSV/Excel data
# Update query pages to use real SQL queries# Convert Parkhomov spreadsheets to JSON
# Place in public/data/
# Load with fetch() and filter client-side# Set up separate API server
# Use React Query for data fetching
# Configure CORSSee IMPLEMENTATION_GUIDE.md for detailed steps.
- Hot Reload: Changes auto-reload in browser
- TypeScript Errors: Show in terminal and IDE
- Console: Open browser DevTools (F12) for debugging
- Mobile Testing: Use browser's responsive mode or resize window
- Change color scheme in
tailwind.config.js - Add more example queries to All Tables page
- Expand element data display with more fields
- Add tooltips explaining fields (using title attribute)
- Create a "Help" or "About" page
- Save queries to localStorage
- Dark mode toggle
- Result pagination
- Copy query URL to clipboard
- Print-friendly result views
- Chart visualization with Recharts
- Advanced filter builder (no SQL needed)
- Query history sidebar
- Export to JSON/PDF
- Periodic table interactive selector
You'll need the Parkhomov tables. Sources:
- Original Site: nanosoft.co.nz (check Downloads section)
- MFMP: Martin Fleischmann Memorial Project
- Excel/CSV: Dr. Parkhomov's published spreadsheets
- Contact: Reach out to Bob Greenyer or MFMP community
Data needed:
- FusionAll (~1,389 rows)
- FissionAll (~817 rows)
- TwoToTwoAll (~516,789 rows - this is large!)
- NuclidesPlus (~324 rows)
- ElementsPlus (~118 rows)
When ready to deploy:
npm run build
# Drag dist/ folder to netlify.comnpm i -g vercel
vercel# Set base in vite.config.ts
npm run build
# Deploy dist/ to gh-pages branch- Vite Docs: https://vitejs.dev/
- React Router: https://reactrouter.com/
- Tailwind CSS: https://tailwindcss.com/docs
- TypeScript: https://www.typescriptlang.org/docs/
- Lucide Icons: https://lucide.dev/
Check these files:
README.md- Project overviewIMPLEMENTATION_GUIDE.md- Detailed next stepsdocs/nanosoft.txt- Original Nanosoft documentation
These are your next implementation priorities! See IMPLEMENTATION_GUIDE.md for the roadmap.
Status: Foundation complete, ready for data integration Dev Server: Running at http://localhost:5173/ Build: TypeScript compiled successfully, no errors