Donate using PayPal

CycleStreets blog

News from CycleStreets

Archive for September, 2011

Cycle campaign toolkit: introducing our developer team

Friday, September 23rd, 2011


Progress on our cycle campaigner toolkit is steaming (pedalling?) ahead! Coding work began on Monday, and will continue solidly for the next few months.

The development of the toolkit has been possible thanks to our GeoVation award, which secured us £27,000 of funding. GeoVation is an Ordnance Survey initiative and forms part of the Ideas in Transit project with funding from the Technology Strategy Board and the Department for Transport.

We're pleased to introduce our developer team, Andy Allan, Andrew France, plus myself (Martin Lucas-Smith) from CycleStreets as project manager. Andy and Andrew will be working in it on solidly for the next few months so that a large amount of development can be done.

We're also approaching various designers and design companies for the work on the design and information architecture aspects of the project.

Andy Allan is a freelance developer and cartographer, specialising in all things related to OpenStreetMap. He is the creator of, the award-winning map for cyclists used by hundreds of websites and mobile applications, along with his recently developed transport map. He has helped develop the technology that powers OpenStreetMap including the online editor, Potlatch2, and is a member of the OSMF Operations Working Group. Andy lives and works in London but prefers cycling elsewhere.

Andrew France is an experienced web application developer specialising in Ruby on Rails. A generalist by nature, he is just as happy designing intuitive front-end interfaces and writing JavaScript as he is constructing database schema. Andrew has worked on a variety of systems from charity sites to hazardous chemicals management and always looks forward to implementing new ideas. He is a keen traveller, cyclist, runner, and imbiber of ale.

Martin Lucas-Smith is one of the two lead developers of CycleStreets. He'll be project-managing the toolkit project and getting involved in the Rails coding in the latter half of the project. For CycleStreets, Martin tends to deal with non-routing code and structure of the CycleStreets codebase; he also deals with most of the CycleStreets project management so that fellow developer Simon can concentrate on the complex routing work. Martin's actual job is as a Web Developer at the Department of Geography , University of Cambridge.

Get involved in an exciting open source project!

The toolkit is to be developed as an open source project, with the code on Github. It will be written using the technologies of Ruby on Rails (v3.1), PostgreSQL, and jQuery.

Volunteers are needed to contribute to the code from the end of October. If you'd be interested, do let us know.

We're aiming to build a project team who will develop and look after the system from December onwards. By that stage, the grant-funded development work will mean that the system is already fully-featured and well coded so should be in a good state to add functionality to.


We'll have:

  • Screenshots of our 'alpha' available by 21st October.
  • A beta available to a few campaign groups from by 4th November. If your group would like to be a 'guinea-pig', do let us know! We'll start to open it up to more groups in the month following.
  • General availability of the site around 2nd December, with bugfixes and additional features leading to the week before Christmas.

Stay tuned to this blog and our Twitter feed for updates.

We're also seeking an additional grant of around £10k to enable us to undertake solid coding on some of the more advanced features that groups have suggested, particularly do deal with more complex issues like cross-group sharing, which will increase the utility of the system considerably.

Designing the toolkit

We held our first developer meetings this week to develop the specification further and do some wireframing:



New section: Points of interest, UK-wide, easily browsable

Thursday, September 22nd, 2011

We're pleased to announce the launch of a major new section of our website:
Points of interest that you can click on to view and select for your journey.

Points of interest

We've integrated OpenStreetMap location data so that you can now click on points on the map. Just go to our journey planner tab and you can use the presets like bike shops, cafés, pubs, and many more.

(Mobile app developers: This data is also available through our API – see below.)

For instance, stations:

If you select a point, it is clickable. A Google Street View picture of the location will be shown, if it's a roadside location:

There's a link in the popup to the place's website if it has one.

There are lots of different POI types available:

You can browse locations anywhere the UK, for instance to find these independent bike shops in London:

Please add locations to the map!

If a place you know of doesn't appear in the map, please contribute your knowledge to OpenStreetMap by using the Edit section of our website. Warning: it can be quite addictive!

Or perhaps no-one's added a location's website yet? Click on the 'add it' link in the popup shown above. Follow the link, click on the icon, click on 'Advanced' and then enter 'website' on the left and the URL on the right, and click Save. You'll need to create an OpenStreetMap account if you don't have one already.

You must not copy things from other people's maps, however – additions and edits must be based on your local knowledge of an area.


This data is now all available through our API so that it can be integrated into your cycle routing app.

For full details, see our API documentation.

(We hope to have this functionality in our own apps shortly. If you can help patch it in, please branch our app repo and pitch in!)

CycleStreets mobile web site launches

Thursday, September 8th, 2011

Today, we’re very pleased to announce the beta mobile web version of CycleStreets – written by me, project-managed by Martin, and funded by Cycling Scotland.

Built in jQuery Mobile and HTML5, this extends CycleStreets’ mobile support beyond our well-received Android and iPhone apps to cover other platforms, including iPad and BlackBerry.

Just like the other apps, you can plan cycling routes while out and about, upload photographs you take along the way, and find photos others have uploaded nearby.



The mobile HTML version has an experimental change from the native apps and desktop CycleStreets. Instead of tapping the map to add a draggable marker, we use fixed crosshairs in the middle of the screen. We hope this makes route planning a little easier, by reducing the possibility of accidental clicks.

Start route Fetching route

Once you have a route planned, it’s easy to compare the different journey types that CycleStreets offers – fastest, quietest, or balanced – and see individual turns.

Fastest route Individual instruction

In a somewhat alpha feature (as HTML5 doesn’t yet offer brilliant phonecam integration), you can also upload photos you’ve previously taken of cycling problems nearby. And you can see photos that others have added to CycleStreets.

Upload photos Photos near me

We automatically save your routes for future reference, and your preferences for cycling speed, route type, and preferred map type – OpenStreetMap, OpenCycleMap, or Ordnance Survey.

Saved routes Settings page

Technical notes

For me as a coder, this was pretty much a dream project: a meaningful application, a cutting-edge platform, and a supportive project lead, in the form of Martin, to manage it all.

My goal for the mobile HTML app was to create something easy to use and as accessible as possible – while being realistic about the fact that CycleStreets routing, with its maps and polylines, is inevitably going to work best on a smartphone as a native app.

To that end, technical readers may be interested in the following notes:

  • jQuery Mobile: As we were using jQuery anyway, I chose jQuery Mobile for its lovely look and feel, its clever Ajax page transitions, and its sensible graded browser support – plus a general good feeling about the project. Now in beta, it’s perhaps a little slow (they’re working on it), but definitely a project to watch.
  • HTML5: We use geolocation (ahem) plus localStorage to save user details – though the app should still function if neither are available. There’s clearly also scope for offline route storage, which we hope to add in v1.1.
  • Responsive design: This would obviously have been nice (for an example, visit FixMyTransport in a desktop browser, and then resize it so it’s really small). However, it would also have required changes to the CycleStreets desktop CSS beyond the scope of this project – though I believe it’s still in the longer-term CycleStreets world domination plan.
  • Browser testing: Technically, the most challenging part of the project was not coding, but finding the emulators and real devices to test on. We’ve tested in Android, mobile Safari, iPad, and BlackBerry (led by the UK browser stats), plus Opera Mobile and Fennec on Android, but we want to hear more from Nokia and WinPhone7 users.

Help us improve!

This is still very much a beta. However, mobile HTML is a long-term play for CycleStreets, so we expect to add lots of improvements in the coming months and years.

You can help us by trying out the app on your mobile device, and reporting feedback on GitHub issues list. If you’re a coder, free to fork the repo (GPLv2) and make improvements.

Happy cycling, and let us know your thoughts on the app.

Thanks to Cycling Scotland!

We’d like to thank Cycling Scotland for a grant to enable this project to come to fruition.

Railway station codes in searches

Friday, September 2nd, 2011

We've added a mini-feature to our website and mobile apps that some regular train-using cyclists may find useful.

You can now enter train station codes (e.g. KGX for King's Cross) in the search box, and the location of that station will be found. It just avoids lots more typing, and is useful if you use particular stations regularly.

We've been able to do this thanks to a dataset on Scraperwiki.

Also works in our mobile apps

This works in our apps for iPhone, Android and mobile web:


In fact, any app using our geocoder API, such as Bike Hub will pick this up too.

Preset URL formats also supported

You can also enter these in our preset ("plan a journey to..") URLs too.

For instance, will set King's Cross as the destination point.

Or would set the points for King's Cross to Waterloo.

You can read about the many preset URL formats we've set up, which cover postcodes and more.

We welcome your feedback, especially to report bugs or give us route feedback.

My comments relate to: *

Your comments: *
URL of page: *
How did you find out about CycleStreets?:
Your name:
Our ref: Please leave blank - anti-spam measure

* Items marked with an asterisk [*] are required fields and must be fully completed.