Make sure you have:
- ✅ Java 17+ installed (
java -version) - ✅ Maven installed (
mvn -version) - ✅ Node.js and npm installed (
node -versionandnpm -version) - ✅ PostgreSQL running on localhost:5432 with database: vibenotes2, username: postgres, password: password
Open a terminal and run:
cd backend
mvn clean install
mvn spring-boot:runYou should see:
- Spring Boot starting up
- Connection to MySQL database
- Server running on port 8080
- Tables being created automatically (users table)
Open a new terminal window and run:
cd frontend
npm install
npm run serveYou should see:
- Dependencies being installed
- Webpack dev server starting
- App running on http://localhost:8081
- Open your browser to http://localhost:8081
- Click "Register here"
- Create an account:
- Username: testuser (min 3 characters)
- Password: password123 (min 6 characters)
- Confirm Password: password123
- Click "Register"
- You should be automatically logged in and see the Dashboard
- Try logging out and logging back in
You can check PostgreSQL to see the created user:
\c vibenotes2
SELECT * FROM users;- Error: Cannot connect to database
- Solution: Check PostgreSQL is running and credentials are correct. Make sure the database
vibenotes2exists.
- Solution: Check PostgreSQL is running and credentials are correct. Make sure the database
- Error: Port 8080 already in use
- Solution: Kill the process using port 8080 or change the port in
application.properties
- Solution: Kill the process using port 8080 or change the port in
- Error: Port 8081 already in use
- Solution: Change the port in
vue.config.js
- Solution: Change the port in
- Error: Module not found
- Solution: Delete
node_modulesandpackage-lock.json, then runnpm installagain
- Solution: Delete
- Check browser console for errors
- Verify backend is running on http://localhost:8080
- Check network tab in browser dev tools
- Verify CORS is properly configured
Now that your basic authentication is working, you can extend the application with:
- Note creation and management
- Note categories
- Rich text editing
- Search functionality
- And much more!
You can test the backend API directly using curl:
Register:
curl -X POST http://localhost:8080/api/auth/register \
-H "Content-Type: application/json" \
-d '{"username":"testuser","password":"password123"}'Login:
curl -X POST http://localhost:8080/api/auth/login \
-H "Content-Type: application/json" \
-d '{"username":"testuser","password":"password123"}'Test Endpoint:
curl http://localhost:8080/api/auth/test