Show your current location on a map ๐.
Featuring a very serious koala marker ๐จ.
๐ Try it live
The app uses the Geolocation API provided by modern browsers to determine your current location. It leverages the getCurrentPosition() function, which you can learn more about in the MDN documentation. This function retrieves the geographic location of your device, allowing the app to display your position on a map! ๐๐
๐ Try it here
(Fast, client-side only โ works directly in your browser, no server needed!)
To run the app in a Docker container on your machine:
-
Install Docker
[https://docs.docker.com/desktop/] runs on Linux, Mac, and Windows.
-
Clone the Repository
Clone the repo to your local machine:
git clone https://github.com/groda/locate-me-now.git
-
Change Directory
Navigate into the project directory:
cd locate-me-now -
Build the image and launch the container
-
For development only:
docker compose up --build -
In production:
docker compose -f compose.prod.yaml up --build -d
-
-
**Open http://localhost:3000/ in your browser
The port
$3000$ is hard-coded inDockerfile,compose.yml,compose.prod.yml, and inserver.js. -
Stop/restart
Stop the container with:
docker compose downStart (without re-building image):
docker compose up -d
This guide is for Mac OS. Follow these steps to run the app locally on your machine:
-
Download Node.jsยฎ
Get Node.js from here. (For Mac, I recommend v20.17.0 (LTS) / macOS / using nvm for version management.)
Open your terminal and run the following commands:
# Install nvm (Node Version Manager) curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash # Download and install Node.js (may require restarting the terminal) nvm install 20 # Verify the correct version of Node.js node -v # should output `v20.17.0` # Verify the correct version of npm npm -v # should output `10.8.2`
-
(Optional) Use Specific Node Version
Not sure if this is required, but if needed:
nvm use 20.17.0
-
Install Express
To install the required dependencies:
npm install express
-
Clone the Repository
Clone the repo to your local machine:
git clone https://github.com/groda/locate-me-now.git
-
Change Directory
Navigate into the project directory:
cd locate-me-now -
Start the App
Run the app with the following command:
node server.js
-
Access the App
Once the app starts, you should see a message like:
Your app is listening on port 3000. Open http://127.0.0.1:3000 in your browser to view the app in action! ๐
Why keep the Node.js server?
The app currently runs fully in the browser (no backend needed), but the Express server, Docker setup, and Render deployment are included as a foundation for future features (e.g., saving locations, user accounts, real-time updates, or API integrations). This way, the project is ready to grow without major refactoring later.
The app was previously hosted on Glitch:
Locate Me Now on Glitch (no longer active)
Note: Glitch shut down its free app hosting in 2025. This link is kept for historical reference.
Feeling nostalgic about the old web days?
Check out NOSTALGIA.md for a short reflection on why removing jQuery felt a little bittersweet.
