A Django-based social platform for team building and project collaboration.
Social Team Build is a web application that allows users to create profiles, showcase their skills, and collaborate on projects. Users can create projects, define positions needed, and apply for roles in other users' projects.
The following test users are available for development and demonstration purposes:
- Name: Admin User
- Email: traceh38@gmail.com
- Password: admin123
- Role: Administrator (superuser)
- Name: test user1
- Email: testuser1@testuser.com
- Password: testpass123
- Skills: OOP, JavaScript, Python, Django
- Name: test user2
- Email: testuser2@testuser.com
- Password: testpass123
- Skills: Design, JavaScript, Virtual Reality Development
- Name: test user3
- Email: testuser3@testuser.com
- Password: testpass123
- Skills: OOP, Design, JavaScript, Python, Virtual Reality Development, Django
- User Authentication: Custom user model with email-based authentication
- User Profiles: Detailed profiles with bio, avatar, and skills
- Project Management: Create and manage collaborative projects
- Position System: Define specific roles needed for projects
- Application System: Apply for positions in projects
- Skills Tracking: Tag-based skill system for users
- Email-based authentication
- Custom user manager
- Fields: email, first_name, last_name, date_of_birth, is_active, is_admin
- One-to-one relationship with User
- Fields: username, bio, avatar, skills (many-to-many)
- UserProject: Main project model with title, description, timeline, requirements
- Position: Specific roles within projects
- Applicant: Applications for positions
- Available skills: OOP, Design, JavaScript, Python, Virtual Reality Development, Django
- Clone the repository
- Install dependencies:
pip install -r requirements.txt - Run migrations:
python manage.py migrate - Load fixtures:
python manage.py loaddata accounts/fixtures/test_users.json accounts/fixtures/profiles.json - Run the server:
python manage.py runserver
The project includes pre-populated test data:
- test_users.json: Contains 4 test users (1 admin, 3 regular users)
- profiles.json: Contains user profiles with skills and bio information
- initial_skills.json: Contains the initial set of available skills
This project is configured for Railway deployment. Make sure to:
- Set up environment variables for production
- Configure static files for production
- Set up database for production environment
- The project uses Django's built-in authentication system with a custom user model
- Static files are served from
/social/static/ - Templates are organized by app
- The project includes comprehensive test fixtures for development
/accounts/- User authentication (login, logout, registration)/profiles/- User profile management/projects/- Project and application management
Run tests with: python manage.py test
Test fixtures are available in the testing/fixtures/ directory.