Much like reviewing restaurants, the ability to talk about a workplace and discuss its strengths and weaknesses is starting to become a mainstream practice.
Employees, both past and present, aren’t shying away from talking about how they truly feel about a company. On that note, if building something similar to Glassdoor is something that interests you, this blog post should keep you excited!
For today’s two-part article, we’re talking about how you can develop your very own version of a company review website.
We’ll begin by using the visual designing tool to map out how the UI of your app looks like. Since we’re building something like Glassdoor or RateMyEmployer, our core pages are going to be the following:
- Company profiles – A page where people can talk about their companies
- User profiles – A page where people can update and specify particular information about them.
- Home page – The part in your product where you get to choose what you want to click.
- Search pages – A page that shows what you search for.
One of Bubble’s best features is the capacity to send data to a page. In other words, users will have to build only one generic page version that reflects data about particular users from your database.
In our context, we’ll need to build only one company profile page. This should be followed by writing the appropriate logic to display the appropriate information from each company we want to include in our database.
Establishing your database
When you’ve arranged your product’s display, you can work on developing the appropriate fields to make your application work. We’ll depend on these fields to power your app’s logic.
Because Bubble strives to offer an easy way to build programs, you can seamlessly create a database by listing your top-level data types, then supplementing these with the appropriate fields for every category.
Since we’re building an MVP of a product like Glassdoor, the following data types and fields is what you can pattern after:
Data Type: User
- Current company
- Profile photo
- Field of study
- Skills & specialization – Note: If you’d like a field to display multiple items, choose to configure a data field as a list of multiple items.
Data Type: Company
- Website link
- Job listings
Data Type: Reviews
- The content within a review
- The review star rating
- Review publisher
- The company in which the review is published against – Note: By linking a data field to an existing data type, you can easily build upon and leverage other data types. In this case, by adding the existing company field within a review, we can pull additional company data such as the logo, name, and description without having to create new data fields.
Data Type: Job listing
- Company logo
- Role location
- Role description
Now that we’ve built your app’s database and design, it’s time to stitch each element together for the entire product to work.
Bubble refers to these as workflows. Every workflow is reliant on an event that’s triggered when users click on a button. As a result, it allows a series of actions to run, therefore achieving the desired objective in a process.
Let’s begin by structuring the logic that allows user information to be displayed in a profile. This should be a simple process on the platform. Bubble seamlessly integrates with third-party services and plugins like Facebook, Stripe, and Google.
For this context, we’re going to focus on letting users add relevant employee information such as their name, company, job title, display picture, location, and curriculum vitae.
We use input fields to make this doable.
When a user adds appropriate information in every input, selecting the submit button is all it takes to update this section. Simultaneously, clicking this button also prompts a workflow to run.
Through the workflow editor, you can make changes to a thing to your database.
Here, you’ll want to update the User settings relying completely on the appropriate page inputs.
Begin structuring every data field you’d want to update against every data type’s field.
When you click this button, it then automatically updates the appropriate fields with their edited values.
What’s more, users can also preview this data by choosing the appropriate data fields they’ve filled out.
When you’re building something similar to Glassdoor, you’ll also try to replicate a familiar process that lets users customize their company pages.
The workflow that lets user-generated reviews work should also be patterned after a process similar to editing profiles. Except here, you’ll need to create a new thing.
When doing so, you’ll choose the review data type. Moving forward, you’ll need to structure your input fields to accommodate the appropriate database fields.
We previously established data fields that are linked to the company data type in your database. This integration lets users turn in a review about specific companies.
Similar to every other workflow we’ve built so far, the submission process for job listings should also be like the rest. You can match and add unlimited data fields to data types in your database.
Previewing dynamic content
When you’ve populated your database with relevant reviews, companies, and job openings, you can seamlessly display the relevant content of every user profile and company.
When building company profile pages, “company property” is what you want to change page type from.
By classifying the content type of a page, Bubble pulls and sends appropriate data from the sources you filled out earlier.
You can now begin to add dynamic content to successfully display data about a company.
You can add a repeating group element to display only the appropriate data of a particular company you’re viewing.
To search for reviews, edit the datasource of the repeating group. When a user then views a specific page, only the relevant content will be populated.
And just like that you now have a company review website!
Are you interested in developing business apps too? Check our courses to learn more about building your app
(Source and screenshots from: https://bubble.io/blog/build-whatsapp-clone-no-code/)