Auctus (Latin for "growth") is a comprehensive web platform designed to connect Fredericton businesses with grants, partnerships, and community resources.
Auctus AI serves as a one-stop hub for local businesses to:
- Discover grants with intelligent matching based on eligibility
- Connect with partners through AI-powered business matchmaking
- Engage with the community via discussion forums
- Find local talent and job opportunities
- Get instant help from an AI business advisor
- Framework: Next.js 16.1.1 (App Router)
- Language: TypeScript 5
- Styling: Tailwind CSS 4
- Icons: Lucide React 0.562.0
- State Management: React Context + Zustand pattern
- Runtime: React 19.2.3
- Node: 20+ required
auctus-frontend/
βββ app/ # Next.js App Router pages
β βββ page.tsx # Home/Landing page
β βββ dashboard/ # Business dashboard
β βββ forum/ # Community forum
β β βββ [threadId]/ # Thread detail pages
β β βββ new/ # Create new thread
β βββ funding/ # Grant discovery
β β βββ [grantId]/ # Grant detail pages
β βββ matchmaker/ # Business matching
β βββ talent/ # Jobs & talent marketplace
β βββ layout.tsx # Root layout with navbar/footer
β βββ providers.tsx # Context providers wrapper
β βββ globals.css # Global styles
β
βββ components/
β βββ ui/ # Base UI components
β βββ cards/ # Data display cards
β βββ layout/ # Navbar & Footer
β βββ AIChatbot.tsx # AI advisor chatbot
β βββ ErrorBoundary.tsx # Error handling
β
βββ lib/ # Utilities & logic
β βββ data-utils.ts # Data access functions
β βββ ai-responses.ts # AI chatbot logic
β βββ BusinessContext.jsx # Business state context
β βββ ToastContext.tsx # Toast notification system
β βββ utils.ts # Helper functions
β
βββ data/ # Static JSON data
β βββ businesses.json # 7 demo businesses
β βββ grants.json # 30 grant opportunities
β βββ threads.json # 18 forum threads
β βββ replies.json # 50+ forum replies
β βββ matches.json # Business partnerships
β βββ jobs.json # 15 job listings
β βββ talents.json # 10 talent profiles
β
βββ context_hub/ # Development documentation
- Eligibility checking: Automatic matching based on location, revenue, employees, and industry
- Match percentage: Visual indicators (green >80%, yellow 60-80%, gray <60%)
- Advanced filtering: By amount, deadline, category, and match score
- Countdown timers: Days remaining until grant deadlines
- 6 categories: Ask for Help, Collaboration, Hiring, Marketplace, Business Ideas, Announcements
- Real-time search: Filters by title, content, and tags
- Sort options: Most Recent, Most Replies, Most Helpful
- AI suggestions: Related grants and threads based on discussion
- Smart algorithm: Matches based on complementary needs and offers
- 4 filter tabs: All Matches, You Need/They Offer, You Offer/They Need, Mutual Benefits
- Match scores: 0-100% compatibility with detailed reasoning
- Context-aware: Adapts responses based on current page and business
- 8+ query handlers: Grants, partnerships, deadlines, forum, registration, navigation
- Suggestion cards: Clickable recommendations with direct navigation
- Dual views: "I'm Hiring" and "Looking for Work"
- Skill filtering: Search by tech stack and expertise
- Job types: Full-time, Part-time, Contract, Internship
- Node.js 20+
- npm, yarn, pnpm, or bun
# Clone the repository
git clone <repository-url>
cd auctus-frontend
# Install dependencies
npm install# Run development server
npm run dev
# Open browser to http://localhost:3000# Create optimized production build
npm run build
# Start production server
npm startThe platform includes 7 demo businesses for testing:
- Aroma Coffee House (biz-1) - Coffee shop seeking equipment financing
- Maritime Manufacturing (biz-2) - Metal fabrication seeking expansion grants
- Digital Dreams Agency (biz-3) - Marketing agency seeking tech talent
- Harvest Table Restaurant (biz-4) - Farm-to-table restaurant
- TechStart Solutions (biz-5) - IT consultancy seeking growth funding
- Coastal Adventures (biz-6) - Tour company seeking tourism grants
- Artisan Collective (biz-7) - Craft cooperative seeking expansion
The platform includes a global toast notification system:
import { useToast } from "@/lib/ToastContext";
function MyComponent() {
const toast = useToast();
const handleSuccess = () => {
toast.success("Operation completed successfully!");
};
const handleError = () => {
toast.error("Something went wrong.");
};
const handleInfo = () => {
toast.info("This is an informational message.");
};
const handleWarning = () => {
toast.warning("Please review before proceeding.");
};
// Custom duration (default is 5000ms)
const handleCustom = () => {
toast.success("Quick message!", 2000);
};
}- Primary:
#2563eb(Blue) - Trust, professional - Secondary:
#10b981(Green) - Growth, success - Accent:
#f59e0b(Orange) - Energy, action
All UI components support multiple variants:
- Buttons: primary, secondary, outline, ghost
- Badges: Color-coded by category
- Cards: Consistent shadow and padding
- Dynamic imports: AI Chatbot lazy-loaded (reduces initial bundle ~20-30%)
- Image optimization: Next.js Image component with WebP/AVIF support
- Code splitting: Automatic route-based splitting
- Memoization: Expensive calculations cached with useMemo
- Keyboard navigation: All interactive elements accessible via keyboard
- ARIA labels: Proper labeling for screen readers
- Semantic HTML: Proper use of HTML5 elements
- Focus states: Visible focus rings on all interactive elements
- Test all 9 pages load without errors
- Test business context switching
- Test grant filtering and matching
- Test forum search and categories
- Test AI chatbot on different pages
- Test responsive design (mobile, tablet, desktop)
- Chrome (primary)
- Firefox
- Safari
- Edge
Create a .env.local file (see .env.example):
# Future API endpoints
# NEXT_PUBLIC_API_URL=https://api.auctus.ai
# Feature flags
# NEXT_PUBLIC_ENABLE_ANALYTICS=false# Production build
npm run build
# The output will be in the .next folder
# Deploy the entire project directory to your hosting platform- Vercel (recommended for Next.js)
- Netlify
- AWS Amplify
- Self-hosted with Node.js
- Create page file in
app/your-page/page.tsx - Add route to Navbar component
- Implement with existing UI components
- Test responsive layout
- Add to validation documentation
- Add data to appropriate JSON file in
/data - Update TypeScript interfaces in
lib/data-utils.ts - Create/update utility functions for data access
- Test data relationships and integrity
- Use TypeScript for all new files
- Follow existing component patterns
- Add JSDoc comments for complex functions
- Use Tailwind classes (avoid custom CSS)
- Keep components focused and reusable
# Kill process on port 3000
npx kill-port 3000
# Or use a different port
npm run dev -- -p 3001# Clear Next.js cache
rm -rf .next
# Reinstall dependencies
rm -rf node_modules package-lock.json
npm install# Check for type errors
npx tsc --noEmit- Development Plan - Original development strategy
- Feature Specifications - Detailed feature breakdown
- Phase Validations - Testing and validation docs
- Demo Script - Presentation guide
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
[Add your license here]
Built with Next.js, React, TypeScript, and Tailwind CSS.
Version: 1.0.0
Last Updated: January 2026