Squadbase logo

Project

Managing projects in Squadbase

What is a Project

Projects are the core feature of application development in Squadbase. You can manage code, deployments, runtime environments, access analytics, and logs in an integrated manner.

Key Features

  • Integrated Management: Unified management of code, deployment, logs, and analytics
  • Space Integration: Always belongs to a Space and shares access with space members
  • Multiple Creation Methods: Choose from templates, GitHub import, or file upload
  • Environment Management: Separate Production and Preview environments
  • Feedback Collection: Comment and feedback features for team collaboration

Creating a Project

All projects must belong to a Space. Space members automatically have access to all projects within that space.

Click "Create Project" in the Space Details Screen

Select a space from the space list and click the "Create Project" button in the space details header.

Select the Space

You can change the space where the project will be created using the "Space" dropdown.

Projects must belong to a space to enable team collaboration.

Choose Creation Method

You can choose from three creation methods (details below):

  • Upload Excel, CSV, or Jupyter Notebook files
  • Start from a template
  • Import from GitHub

Creation Methods

Upload Excel, CSV, or Jupyter Notebook Files

Create a dashboard from data files. After upload, the editor opens for data visualization and interactive dashboard building.

Supported Formats:

  • Excel (.xlsx, .xls)
  • CSV (.csv)
  • Jupyter Notebook (.ipynb)

Steps:

  1. Select the "Upload File" tab
  2. Upload your file
  3. Edit in the editor after processing completes

Create from Template

Get started quickly using provided templates for various frameworks and use cases.

Available Templates:

  • Streamlit applications
  • FastAPI
  • Next.js
  • Other frameworks

Steps:

  1. Select the "Start from Template" tab
  2. Choose your desired template
  3. Project is created

Import from GitHub Repository

Create a project by importing an existing GitHub repository.

Prerequisites:

  • GitHub account integration required
  • Access permission to the target repository

Steps:

  1. Select the "Import from GitHub Repository" tab
  2. Select your GitHub Organization
  3. Choose the repository to import
  4. Project is created

Member Access

When creating a project, the following access rules apply:

  • Automatic Access: All space members automatically have access to the project
  • Permission Level: Access level is determined based on Organization Role (Admin, Creator, Viewer)
  • Additional Members: After project creation, you can invite members from outside the space individually

Viewing and Managing Projects

Project List

Projects are displayed as cards in the space details screen.

Card Display Content:

  • Preview Image: Screenshot of the project
  • Project Name: Name of the project
  • Last Updated: Displayed in "Last updated XX ago" format
  • Open App Button: Opens the deployed application
    • Grayed out (disabled) if not deployed
  • Open Editor Button: Opens the Editor

Pin Feature

You can pin frequently used projects to the sidebar.

How to Pin:

  1. Click the "..." button on the project card
  2. Select "Pin project"

Effect:

  • A "Pinned" section appears in the sidebar
  • Pinned projects are always displayed for quick access

To Unpin:

  • Select "Unpin project" from the same menu

Project Details Screen

Clicking the project name displays the details screen.

Header Section

  • Member Avatars: Icons of members with access are displayed
  • Open App: Opens the deployed app
  • Open Editor: Opens the code editor
  • Tab Navigation: Switch between 6 tabs

Project Tab

Displays project overview and latest information.

Latest Deployment

View the latest deployment status.

Display Items:

  • Status: Ready, Error, etc.
  • Environment: Production, Preview, etc.
  • Commit Hash: Version of deployed code
  • Current Badge: Currently published deployment
  • Commit Message: Description of changes
  • Deploy Time and Executor: When and who deployed

User Analytics

Analyze application access patterns.

Features:

  • Period Selection: Choose period such as Weekly
  • Page Views Graph: Visualize daily access counts

For details, see Analytics Feature.

Comments (Feedback)

Collect feedback within the team.

Categories:

  • ✨ Feedback: General feedback and impressions
  • 🐞 Bug Report: Bug and issue reports
  • 💡 Feature Request: New feature proposals
  • 💬 Question: Questions and confirmations
  • ✍️ Note: Notes and documentation

Actions:

  • Create new comments using the "New Comment" button

Deployment Management

Deployments Tab

Manage project deployment history.

Screen Layout:

  • Environment Filter: Filter by "All Environments" or specific environment
  • Create Deployment +: Create a new deployment
  • Deployment List: Displayed in table format

List Display Content:

ItemDescription
Commit HashVersion of deployed code
Current BadgeCurrently published deployment
EnvironmentProduction, Preview, etc.
StatusReady, Error, etc.
Deploy TimeBuild time + elapsed time
Commit MessageDescription of changes
Deploy Date/TimeWhen deployment was executed
Deploy ExecutorUser who executed deployment
View DetailsDisplay deployment details

Actions:

  • View Details: Check deployment details
  • Pagination: Browse history across multiple pages

Member Management

Members Tab

Manage project members and their permissions.

Screen Layout:

  • Invite Member Button: Invite new members
  • Project Role Description: Information about project roles
  • Member List: Displayed in two sections

Organization Admins

Organization-level administrators are displayed.

Display Content:

  • Avatar
  • Username
  • Organization Role: Admin
  • "Full access to all projects" display
  • "Full Control" badge

Characteristics:

  • Has full access to all projects
  • No individual invitation needed

Space Members

Members accessing the project through space membership.

Display Content:

  • Avatar
  • Username
  • Organization Role: Creator, Viewer
  • "via Space: [Space Name]" display
  • Access Level:
    • Deploy & View: Can deploy and view (Creator)
    • View Only: View only (Viewer)
  • Action menu (...)

Characteristics:

  • Automatic access for space members
  • Permissions based on Organization Role

Project Settings

Settings Tab

Manage detailed project settings.

Sidebar Menu:

  • Overview
  • Git Repository
  • Database
  • Environments
    • Production
    • Preview

Overview Settings

Edit basic project information.

Editable Items:

  • Project Name: Change project name
  • Space: Change the space the project belongs to
  • Save Button: Save changes

Read-only Information:

  • Project ID: Unique identifier for the project (copyable)
  • Outbound IPs: List of source IP addresses from the project (copyable)
    • Used for database and API connection permission settings

Danger Zone

Section for important changes and delete operations.

Make Project Public

  • Current state: "This project is currently private."
  • Change visibility settings with the "Change Visibility" button

Delete Project

This action is irreversible! Deletion permanently removes all deployments, logs, and settings associated with this project.

  • Description: "You can delete the project. This action is irreversible."
  • Delete with the "Delete Project" button

Tips & FAQ

Q: What's the relationship between projects and spaces?

A: Projects must belong to a Space. Space members automatically have access to all projects, making team collaboration easy.

Q: Can I change the GitHub repository later?

A: Yes, you can change it from Settings > Git Repository.

Q: How do I create a deployment?

A: Use the "Create Deployment +" button in the Deployments tab, or deploy from the Editor.

Q: How do I add project members individually?

A: You can invite members from outside the space using the "Invite Member" button in the Members tab.

Q: What are Outbound IPs used for?

A: They're used for firewall and access restriction settings when connecting to external databases or API services. You need to allow connections from these IP addresses.

Q: What's the difference between Production and Preview environments?

A: Production is the live environment, Preview is for testing and preview purposes. For details, see Environment Feature.

Best Practices

  1. Start with Templates: For your first project, starting with a template is smoother
  2. Use Pin Feature: Pin frequently used projects for faster access
  3. Collaborate with Comments: Share bug reports and feature requests using the Comments feature to promote team information sharing
  4. Check Deployment History: If issues occur, check the history in the Deployments tab to identify when problems started
  5. Utilize Logs: Actively use the Logs feature to identify the root cause of problems

Summary

Projects are the powerful core feature of application development. You can manage everything from creation to deployment, analytics, and more in a unified manner. Integration with Spaces enables efficient team development.

Key Features:

  • Integrated project management
  • Flexible deployment management
  • Team collaboration
  • Detailed access control
  • User analytics and log monitoring

For more detailed information, please refer to the dedicated documentation for each feature (Analytics, Environment, Logs, etc.).