Welcome to the vetting assessment for Senior Mobile App Developers at Worksquare.
This task is meant to assess your skills in building a modern, mobile-first housing listings interface. We're particularly interested in your ability to structure mobile apps, manage state effectively, and design an intuitive user experience.
Build a housing listings app using either React Native (with or without Expo) or Flutter.
The app should display a list of available properties in a user-friendly format, with support for filtering by location and property type.
Choose one of the following:
- React Native (with functional components and Hooks)
- Flutter (with null safety and modern best practices)
- Load housing data from a provided
listings.jsonfile - Display listings in a scrollable, responsive layout (list/grid)
- Implement filters or search for:
- Location
- Property Type
- Handle loading and empty states gracefully
- Include UI animations or transitions (e.g. loading shimmer, button feedback, list item animations)
- Use clean, modular code architecture
- Style with platform-specific best practices (or Tailwind-like utility frameworks where supported)
- Ensure the UI looks good across different screen sizes
You should include a docs/ folder or describe in the README.md:
- Component structure and folder organization
- State management approach (e.g. Redux, Context API, Riverpod, Provider) and your reasoning
- Any UI/UX design decisions and rationale
- Screenshot(s) or design inspiration (optional)
Your final submission should include the following in the README.md:
- How to set up and run the app
- Tools and libraries used (e.g. navigation, state management, animation)
- Description of your approach and thought process
- Any limitations, trade-offs, or features you would improve
- Where and how AI was used (if applicable)
- Screenshots or screen recordings (optional but encouraged)
- Clean, maintainable, and scalable code
- Logical and modular folder structure
- Intuitive user interface and smooth experience
- Creative problem-solving and developer reasoning
- Good Git commit history (granular and descriptive commits)
- Fork this repository
- Set up your mobile app project inside the fork (no starter files are provided)
- Work in a branch named after your GitHub handle
- Push your final code to GitHub
- Send us an email with the following:
- GitHub repository link
- Live demo link (e.g. Expo, APK file, or TestFlight)
- Any relevant notes or context about your work
You have 48 hours to complete and submit the task from the time it is assigned.
You will receive a listings.json file separately.
Copy it into your local project and use it as your data source.
You are welcome to use AI tools (e.g. ChatGPT, GitHub Copilot) to assist with the task.
If you do, please document where and how AI was used — this does not count against you.
Good luck, and happy coding!
— Worksquare Team