BRAP is a Java and Android remoting protocol that uses native Java object serialization, encapsulated in HTTP. It aims to be an alternative to Spring HttpInvoker and Spring Security especially when you don't need or want the dependencies of Spring in your client, for example when building a rich client app or an Android app where size is important. The authentication mechanism lets you use your own domain objects as credentials. Server configuration can be expressed solely in web.xml or by subclassing the ProxyServlet but there is also an optional SpringProxyServlet available for seamless Spring Integration. BRAP focuses on being easy to use, small in size (9 kb), yet powerful and extensible. The client uses a pluggable TransportProvider with default implementations for HttpURLConnection and Apache HttpClient.