ArcGIS Configurable Apps will be retired in 2025. The ArcGIS Configurable Apps source code repro is deprecated and will not receive further updates. In addition, this repository will be removed in October 2025, along with the October 2025 ArcGIS Online update.
This is a fully configurable public facing mapping application that highlights areas through authoritative data feeds and social content, allowing the public to tell a story.
The template can be configured using the following options:
New to Github? Get started here.
http://<Your Web Server>/<app folder name>/index.html
"sharinghost": "https://" + “<your organization name>.maps.arcgis.com
arcgis
is the name of the Web Adaptor: "sharinghost": "https://" + "webadaptor.domain.com/arcgis"
"https://js.arcgis.com/3.35"
and replace this portion of the reference with the url to your local install."https://webadaptor.domain.com/arcgis/jsapi/jsapi"
where arcgis
is the name of your Web Adaptor.Note: If your application edits features in a feature service, contains secure services or web maps that aren't shared publicly, or generate requests that exceed 200 characters, you may need to set up and use a proxy page. Common situations where you may exceed the URL length are using complex polygons as input to a task or specifying a spatial reference using well-known text (WKT). For details on installing and configuring a proxy page see Using the proxy. If you do not have an Internet connection, you will need to access and deploy the ArcGIS API for JavaScript documentation from developers.arcgis.com.
In order to use some of the social media feeds on a different server, you'll need to get your own user keys for your app and in some cases deploy a proxy in order to correctly connect.
You'll need to point these values to the sign in URL and query URL of the proxy.
You'll need to obtain your own unique key from the Flickr API
Then, enter it in the config as flickr_key
.
You'll need to obtain your own unique Instagram client ID key from the Instagram API
Make sure to enter all valid redirect URI's in the instagram security panel so that your app can connect to their servers.
Then, enter it in the config as instagramClientId
.
Since the Twitter search API doesn't support user authentication using oAuth2, we need to use oAuth 1.1 which requires the keys to be stored server side for security. Therefore, we need to create a Twitter proxy that will keep the keys secret and allow us to query information through the Twitter Search API.
Proxies:
Once the proxy is setup, you'll need to point the user config to the location of the signin url and twitter url.
The config values are:
twitterUrl
twitterSigninUrl
Then, you'll need to get an API key from the Twitter API. Once you have that, plug the details of it into the proxy configuration.
You'll need to obtain your own unique Webcams.travel key from the Webcams.travel API
Then, enter it in the config as webcams_key
.
You'll need to obtain your own unique API key from the YouTube API
First, you'll have to enable the "YouTube Data API v3" so that it can be used by your application.
You'll want to create an API use key for "YouTube Data API v3" and set credentials on it to restrict traffic from only the domain where your application will be hosted. For example, we use ".arcgis.com/".
Then, enter it in the config as youtube_key
.
This application uses a custom webfont created on Fontello. If you're hosting this application on your own server, make sure that it's configured to host the webfont files with the correct mime types. Some servers require a mime type set for these files to be able to serve them correctly. See the following URLs for more information. There is a zip archive of the webfont with it's fontello config in the "resources" folder in this repository.
Find a bug or want to request a new feature? Please let us know by submitting an issue.
Anyone and everyone is welcome to contribute. :)
Copyright 2012 Esri
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
A copy of the license is available in the repository's license.txt file.